HorseEnhancer 2.0
Poro rewrote the entire codebase in Kotlin. This may need to get updated to reduce the filesize, as it's currently quite large.
Rewriting this project using Kotlin
Why Kotlin?
No NPE (nulls are opt-ins, thus making code safer from unexpected NPEs)
Less verbose code
[Coroutines](https://kotlinlang.org/docs/coroutines-overview.html)! Finally, we can safely and easily defer code without hogging the server threads.
[Extensions](https://kotlinlang.org/docs/extensions.html)! Make code easier to read and write by extending them!
[Operator overloading](https://kotlinlang.org/docs/operator-overloading.html)! We can now combine TextComponents without spamming addExtra with component + anotherComponent + "text component!"
Cleaning up the project
Moved the persistent data to SQLite
Structured project in Maven for better project and dependency management
Converted traditional § formatted chat messages to JSON-style rich formatting chat messages
Easier formatting! Just nest sections together!
Clickable and hover text!
Added permission support
Segmenting commands into subcommands
Cleaner code with separate subcommand logic within respective files
Better maintainability
Code reuse
Using a library for YAML config reading/writing
Comment support!
Upgrading support! We can now add new fields to the config file without nuking the existing one!
Breaking changes
Version bump to 2.0.0 to signify breaking changes
Existing horse saves will be lost
Should we add a migrator?
Depends on Spigot's dependency resolver to reduce package size
See [Spigot plugin.yml documentation](https://www.spigotmc.org/wiki/plugin-yml/), [JavaDocs API](https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/plugin/PluginDescriptionFile.html#getLibraries())