Completely change the file hierarchy

The new Gradle-based build system introduced a brand new file hierarchy.
This patch simple embraces it and allow us to possibly add new 
capabilities in the future (tests, build types, etc.)