simplified modularization by using Java's native SPI
simplified ModuleLoader to load modules directly from classpath instead of special directory, modules are added to classpath as normal maven dependencies
detach value objects to separate module
multi-module maven project
move plugins to sources directory