Reduce usage of ng-show/hide to reduce number of useless DOM elements (fixed)

Progress in the direction of #87, especially on mobile.
This version doesn't break everything for new users.
Revert "use ng-if to hide date instead of css"

That actually decreases performance, because it adds a watcher to every line

This reverts commit 16365db5889eda5c7c508b3c67ea540338ffae1f.
Revert the revertion of multiline and clean it up for new directive.
Merge pull request #270 from glowing-bear/performance3

Performance improvements (fixed)
Merge pull request #271 from torhve/multiline

Revert the revertion of multiline and clean it up for new directive.
Bump versions
Merge pull request #272 from torhve/versionbump

Bump angular and underscore.js versions
Better countWatchers

The old one missed a few, two on the input and the one in the title.
This version also doesn't use jQuery

From: http://stackoverflow.com/a/18539624 by StackOverflow user "plantian"
Remove unnecessary uses of jQuery and dead code

Native code is faster anyways ;)
Remove old cruft
Improve CSS layout. Fix 98% bug that affects chrome/ff differently.

Conflicts:
	css/glowingbear.css
Pixel adjustments to attempt perfectly align icons in top bar
css: merge body tags
Merge pull request #275 from glowing-bear/countWatchers

Better countWatchers, remove jQuery uses
Add space to bottom of bufferlines
Merge pull request #278 from glowing-bear/uifix

Add space to bottom of #bufferlines
Fix bug where updateNickSpeak would fail on lines without a prefix
Travis: disable build success IRC notifications
Fix that bug where only one line was loaded

Let me tell the story backwards:
For some reason, only one line would be fetched in `fetchMoreLines`, but
neither `numLines` nor `buffer.requestedLines` were `undefined`. The
paramater `numLines` must have had some strange value, though.
`connection.fetchMoreLines` is invoked through the main controllers
`$scope.fetchMoreLines`, which sets the parameter to `$scope.lines` if it was
undefined before. That value is computed in `$scope.calculateNumLines`,
which takes the height of the lines area and divides it by the height of the first
bufferline. This computation is retriggered on every `resize` event.
The first bufferline is the 'fetch more lines' link at the top of the window. If the
currently active buffer doesn't have more lines, it is hidden with `ngHide`,
causing its `clientHeight` property to be `0`, and the number of lines to be
fetched `$scope.lines = Infinity` (due to a division by zero).
In `connection.fetchMoreLines`, the following request is then made:
`"buffer:0x" + buffer.id + "/own_lines/last_line(-" + numLines + ")/data"`
to which WeeChat responds with one line. Voilà, there's your mess.
Merge pull request #281 from glowing-bear/travisbequiet

Travis: disable build success IRC notifications