Refactoring, and added Bukkit API listener
Fixed DataSourceException to DataSourceError, fixes #21