Prevent exceptions from being hidden by DEBUG level

We ran into an issue with one of our data nodes which would quit immediately upon starting the service. Looking at every log there was nothing informative. We turned the log up to DEBUG and an exception came out:

```
[2014-06-20 14:48:00,502][DEBUG][bootstrap                ] Exception
org.elasticsearch.ElasticsearchIllegalStateException: Failed to obtain node lock, is the following location writable?: [/usr/local/var/data/elasticsearch/contacts-search-new]
    at org.elasticsearch.env.NodeEnvironment.<init>(NodeEnvironment.java:114)
    at org.elasticsearch.node.internal.InternalNode.<init>(InternalNode.java:150)
    at org.elasticsearch.node.NodeBuilder.build(NodeBuilder.java:159)
    at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:68)
    at org.elasticsearch.bootstrap.Bootstrap.main(Bootstrap.java:201)
    at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:32)
```

It's helpful to have all exceptions printing to `ERROR` level logging or at least `WARN`. But in the case where `Bootstrap.java` is going to quit the JVM, the reason for doing so should be at `ERROR` level so it's clear to the developer what is going wrong.
Since you had to check the log at the `DEBUG` level to see the error message, it implies that it must have been printed to the console, or else you should have seen it as part of the `logger.error(errorMessage)` printed in the log from line 243.

I think the more appropriate change--if any--would be to remove the `else` block from line 242 and then keep the rest of this change. That way the exception is _always_ logged with the stacktrace (makes sense to have once you start jumping through logs), and `foreground` usage remains unchanged. This would also mean that line 238 can go into the `System.err.println` on line 240 rather than always being processed.