Build fixes

Use a specific version of Jackson so that users don't use unstable snapshot version or face unexpected dependency changes. Use junit 4.11 because 4.10 bundles hamcrest in a broken way. Show warnings during compilation and suppress warnings for overriding deprecated APIs.