Split everything in maven modules for easier dependency management