Enable a minimal jar and a minimal client jar on calls to mvn package.

This also does some cleanup of the build specs to reuse the dependencies
in component descriptors. Means less duplication across the different
assembly descriptors, and less chance for mistake