Improve error messages for wrong Configurations
Improve error messages for wrong Configurations

This fixes #342, here are some examples:

```
 $ KETREW_CONFIG="/etc/passwd.toml" ./ketrew pc
[ketrew: Warning]
    The Config-file should have a discriminatory extension (.ml, .sh, or
    .json); the file "/etc/passwd.toml" has extension "toml", Ketrew
    will continue assuming the format is JSON.
[ketrew: ERROR]
    Loading of the configuration failed:
    Exception: Sys_error("/etc/passwd.toml: No such file or directory")
    Details:
        Configuration path guessed from environment/defaults: "/etc/passwd.toml"
        Configuration profile: default
    Environment:
        KETREW_ROOT: Not defined
        KETREW_CONFIGURATION: Not defined
        KETREW_CONFIG: "/etc/passwd.toml"
        KETREW_PROFILE: Not defined
    See also:
    http://seb.mondet.org/software/ketrew/The_Configuration_File.html

ketrew: internal error, uncaught exception:
        Sys_error("/etc/passwd.toml: No such file or directory")

```

```
 $ KETREW_CONFIG="/etc/passwd" ./ketrew pc
[ketrew: Warning]
    The Config-file should have a discriminatory extension (.ml, .sh, or
    .json); the file "/etc/passwd" has no extension, Ketrew will
    continue assuming the format is JSON.
[ketrew: ERROR]
    Loading of the configuration failed:
    Exception: Yojson.Json_error("Line 1, bytes 0-34:\nInvalid token
    '##\n# User Database\n# \n# Note that '")
    Details:
        Configuration path guessed from environment/defaults: "/etc/passwd"
        Configuration profile: default
    Environment:
        KETREW_ROOT: Not defined
        KETREW_CONFIGURATION: Not defined
        KETREW_CONFIG: "/etc/passwd"
        KETREW_PROFILE: Not defined
    See also:
    http://seb.mondet.org/software/ketrew/The_Configuration_File.html

ketrew: internal error, uncaught exception:
        Yojson.Json_error("Line 1, bytes 0-34:\nInvalid token '##\n# User Database\n# \n# Note that '
")

```

```
 $ KETREW_ROOT="/dev/" ./ketrew pc
[ketrew: ERROR]
    Loading of the configuration failed:
    Exception: Sys_error("/dev/configuration.json: No such file or
    directory")
    Details:
        Configuration path guessed from environment/defaults: "/dev/configuration.json"
        Configuration profile: default
    Environment:
        KETREW_ROOT: "/dev/"
        KETREW_CONFIGURATION: Not defined
        KETREW_CONFIG: Not defined
        KETREW_PROFILE: Not defined
    See also:
    http://seb.mondet.org/software/ketrew/The_Configuration_File.html

ketrew: internal error, uncaught exception:
        Sys_error("/dev/configuration.json: No such file or directory")
```

```
 $ ./ketrew pc -C _test_env/configuration.ml  does_not_exist
[ketrew: ERROR]
    Loading of the configuration failed:
    Exception: Nonstd.Option.No_value("profile \"does_not_exist\" not
    found")
    Details:
        Configuration path provided manually: "_test_env/configuration.ml"
        Configuration profile: does_not_exist
    Environment:
        KETREW_ROOT: Not defined
        KETREW_CONFIGURATION: Not defined
        KETREW_CONFIG: Not defined
        KETREW_PROFILE: Not defined
    See also:
    http://seb.mondet.org/software/ketrew/The_Configuration_File.html

ketrew: internal error, uncaught exception:
        Nonstd.Option.No_value("profile \"does_not_exist\" not found")

```

hammerlab/ketrew