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???
No, you're right, I haven't integrated the specs yet. Wasn't sure how you all would feel about the structure of the code, so didn't want to waste any time there :)