One-line brace style

Closes #1089.

This adds a boolean parameter to `brace-style` for allowing single-line statements. For example, the following would be valid with one-line style enabled:

```js
function nop() { return; }

if (foo) { bar(); }

if (foo) { bar(); } else { baz(); }

try { somethingRisky(); } catch(e) { handleError(); }
```

It is disabled by default.

This also adds a new error message for when the closing brace is on the last line of the block, but not on the first line of the block:

```js
function bad() {
  return false; }
```

This would output `Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.`

Tests & docs updated.
We try to stay away from using simple booleans in configurations because you can't tell at a glance what it means. 

Larger question: is the single line applicable to both stroustrup and 1tbs? If so, then something like:

```
[2, "stroustrup", {
    allowSingleLine: true
}]
```