Fully migrated the project to gradle

one big consequence -> new build scripts & project structure