modernize the mvn build. add support for source packaging.