merge #213 credit to @lexware
Change AsyncPlayerChatEvent to PlayerChatEvent.

This change requires that the underlying event system can also have handlers registered for parent event classes of an event class.
Add Game.getServiceManager().
Fix build-breaking Javadoc errors.
Add ServiceManager.provideUnchecked() and ProvisioningException.
Add Game.getCommandDispatcher().
Move registerCommand() from Dispatcher to CommandDispatcher.
Add helper DescriptionBuilder class.
Remove Future, it doesn't make sense for repeating tasks.
Change anonymous class in DescriptionBuilder to an inner class.
Make Game an abstract singleton
Revert "Make Game an abstract singleton"

This reverts commit f5554865759bc4227ee5f1a56d5f5932aae15698.
Added ability to load and unload chunks.
Remove unecessary Optional from provideUnchecked in ServiceManager
Fix a multitude of Javadoc formatting errors.

For how I did this see https://gist.github.com/gratimax/47dffe6b764ac5757e3b.
Begin working on text API
Make Title API immutable
Add Translation API base
class actions
Add type parameter to Message so it can be also used for translated messags