Material Design, UI and UX improvements and quite a lot of bugfixes

This is probably the largest Pull Request here yet, I should have split it up into multiple seperate ones, but it was easier to do this way.

[**Screenhots**](http://imgur.com/a/bYHz6 "QuasselDroid Redesign")
[**APKs**](https://github.com/justjanne/QuasselDroid/releases)

Here’s a summary of the changes this Pull Request does:

UI:
---

- Replaced ActionBarSherlock with the new AppCompat implementation
- Added DetailFragment as a right navigation drawer for QueryBuffers
- Changed the whole UI to use Material Design.
- Updated Notifications
- Replaced most icons with new ones from https://github.com/joppuyo and Android Lollipop default icons
- Rewrote sender color system

Misc:
------

- Made a lot of stuff more modular, allowing for easier modification
- Moved **ALL** strings out of the code into the strings.xml, also sorted that file properly to make translations easier
- Pushed the minimum API level to 14 (Android 4.0)
- Added support for automated Travis building and testing

Bugfixes:
-----------

- Fixed Notifications: #180 and #26, ~~hopefully~~ confirmed #195 
- Fixed NickCompletion: #57
- Fixed #42 (partially) by saving the last state in the app, this stores the state beyond reconnect, but the state is lost at reboot of the phone
- Fixed UI bugs #76, #40
- Fixed a lot of reconnect bugs, including #105, #114 and #146, but also multiple ones that weren’t even tracked yet
- Fixed a bug where, upon joining a new channel, the client would show a random other channel instead.
These should at least log the error to Log.e so it could be found in logcat if something strange happens here