Convert project to Maven

Merge `maven` branch into `master`.