Overlay decorations

It works:
![overlay-decoration](https://cloud.githubusercontent.com/assets/69169/4987275/9f4b251c-6948-11e4-9d7f-620eb073aa47.gif)

I want to position the `atom-overlay` element to fit within the editor window, so people dont have to think about it. @nathansobo, objections to that?

Closes #3747

### TODO

* [x] Overlay decorations display
* [x] Specs
* [x] Properly position up against the bounds of the window
* [x] Make work when shadow dom is disabled
This will cause a reflow whenever the overlay is updated, but that's only when the marker moves right?