Text API

@Minecrell and I have been working on designing the text API. Bleeding contributions are at [LapisBlue/SpongeAPI/feature/chat](https://github.com/LapisBlue/SpongeAPI/tree/feature/chat) where we both have push access and I regularly update [SpongePowered/SpongeAPI/feature/chat](https://github.com/LapisBlue/SpongeAPI/tree/feature/chat) with the latest changes.

Here's what we still have to do:

__Javadocs__
(all start from org.spongepowered.api as root)
- [ ] text.action.TextActions
- [ ] text.action.TextActionFactory
- [ ] text.action.NullTextActionFactory (inherit)
- [ ] text.chat.ChatPositions
- [ ] text.chat.ChatPositionFactory
- [ ] text.chat.NullChatPositionFactory (inherit)
- [ ] text.chat.TextFormatFactory
- [ ] text.chat.NullTextFormatFactory (inherit)
- [ ] text.action.TextFormats/TextStyles (decide name too)
- [ ] text.message.MessageBuilder
- [ ] text.message.MessageFactory
- [ ] text.message.NullMessageFactory
- [ ] text.title.TitleFactory
- [ ] text.title.NullTitleFactory
- [ ] text.translation.TranslationFactory
- [ ] text.translations.NullTranslationFactory

__General__
- [ ] code style everywhere (intellij format)