Add shoes-package (extracted from furoshiki)

This is the companion to shoes/furoshiki#14. It extracts the shoes-specific code from furoshiki, so that we have no more circular dependencies. Furoshiki is generic and doesn't depend on Shoes.

Not completely certain that I've got the abstractions right, or that the use of inheritance vs mixin vs duck typing is ideal yet. Mainly, I'm shooting for separation between shoes and furoshiki. We can improve the interface at a later point. The idea is that Furoshiki has the general logic for packaging jars and apps (so far), and shoes-package injects the shoes-specific requirements/handling into the furoshiki workflow. Other frameworks could inject different requirements/handling

I suspect this needs some love regarding the versioning fixes that @jasonrclark recently pushed.

Comments???
See https://github.com/jruby/warbler/blob/master/lib/warbler/traits.rb for more on Warbler traits. I don't know if there are other examples of traits that are not bundled with the Warbler gem.