Throw IllegalStateException in start() and stop()
Fix some javadoc
Check if the core is started before stopping it in onDisable()