Includes the following components:
- Clean up the makefiles (perhaps just use Gradle for everything instead of Maven)
- Continuous integration builds/tests for commits and pull requests
- Other useful things to check in CI (e.g. error-prone, google-java-format)
- Artifact deployment (snapshots on commit, official releases on tags)