Use ‘refuses first responder’ property

We still need the subclass for rendering the control as active, but the less we override the better.
ARC: Update OakTextView framework
Gutter height now accounts for horizontal scrollbar

Previously the gutter and the text view were set to have the same height (via constraints). Though when the horizontal scrollbar is visible then the gutter should technically be made a little taller to account for the extra bottom margin. Not adding this space was causing problems.

Fixes #773.
Use solid colors for divider line.

This is required now that they are set as opaque.
Truncate the selection string when it grows too long.
Call super in viewWillMoveToWindow:
Fix NSTimer related crash

The timer might be the only thing keeping us retained, so we can’t release it until the very end of the method.
Remove commented code
Don’t draw status bar background on window border
Enable bottom border for bundle editor window
Limit status bar redraw

The NSPopUpButton itself will not bypass redisplay even if it’s title is set to the current title.
Change status bar’s “caret” property

We now use a selection string so status bar doesn’t need to know about what it actually contains.
Strip “offset” from selection string in status bar
Don’t explicitly update file browser header view

This is unnecessary as long as we always go via setUrl: or setHistoryIndex:
Limit file browser header updating

This mainly relates to the folder pop-up. By delaying creation of this menu till the user actually opens it, we avoid/delay having to create potentially expensive icons (icons are “expensive” since creating one may cause TextMate to hit the disk).
Make internal functions private again
Fix exception

This would happen if root url in file browser was not a file url and the user selected “Go to Folder…”.
Improve constraint widths for status bar.

- Set compression priorities to collapse fields in a desirable order.
- Increase default width of selection string to fit 8888:88
- Set grammar popup to the width of the active grammar and give is sensible minimum/maximum widths.
- Set a maximum width for the tab size menu.
Don’t unnecessarily retain scm::ng::info_ptr

This ensures that when an scm::ng::info_ptr object has been disposed by the user, the associated callback will not be called (as no-one else will keep it retained).
Better hiding of scm::ng::info_t implementation