Initial version of unused declaration markers

Close #595.

It turns out much more involved than I expected.

Here is a screenshot:

![image](https://cloud.githubusercontent.com/assets/941060/3659451/fb461f04-11ad-11e4-86a7-5462d3113241.png)

Things to fix:

 - [x] You need to edit the files once in order that markers appear.
 - [x] Find a way to place the markers on top of the scroll bar 
 - [x] Should the markers be absolute or relative wrt view ports (e.g. changing the views requiring to update positions of markers)?
 - [x] What are expected events on markers (e.g. clicking to navigate to corresponding lines)?

An alternative approach:

![image](https://cloud.githubusercontent.com/assets/941060/3659529/988ed56c-11ae-11e4-8959-d7e61f5423e5.png)

Here markers only appear on the left of the text view and their positions are absolute. But the implementation is much more canonical and most issues above don't apply.

Reference: https://github.com/abcminiuser/marginoferror