Implement Titles API

Through implementing Glowkit#51, this provides plugins (and players) the ability to set titles to players. These titles are fancy things that annoy me personally.

**What does this PR include?**
- Titles (with color code support!)
- `/title`

**What does this PR not include?**
- A proper chat component system
  - A workaround system has been implemented because of how the protocol works. The client is expecting a JSON string and it should be correctly formatted. Shoving messages with spaces (ie: `Hello there!`) will break the client. 
  - Extra checks were done in the command handler to ensure that the player cannot break the client with invalid JSON as well. This performs very basic checks as the client is somewhat resilient to extra keys.

I strongly suggest that when the chat component system is implemented that this gets fixed alongside it. 

------------------------------

*Edited by turt2live*

**Related Links:**
- Glowkit: GlowstoneMC/Glowkit#51
- [Sample plugin](https://drive.google.com/folderview?id=0B6JIYSBkLkAnMC13ZVZqekpuRjA&usp=sharing&tid=0B6JIYSBkLkAnTTZYd3Z4ZTMzV3c)

Eh, sure, but are you saying you actually found errors on the client side while testing this? Because I was under the assumption that json chat was particularly tolerant to bullshit, since it deals with untrusted input fairly often. But if you got to break it, maybe it's not the client that is protected against the untrusted input.