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???
@jasonrclark how is the current structure, does everyone get their own version or do we have a central constant to refer to so we don't have to go around updating them all?