Move common modular interface targets to a macro
start implementing the rest of the modular interfaces
WIP: java
Merge branch 'feature/CMake' of github.com:shogun-toolbox/shogun into feature/CMake