even still more refactoring: hoisted the custom spec into the app object

this will make it available for setting the usage description (my ultimate goal),
plus it means I don't have to send it to prepare_custom any more
in fact, I don't have to send _anything_ to prepare_custom() that isn't going to prepare()
which means I can go back to my original idea of having it just be an overridden prepare() method that calls super()
which is ever-so-much nicer and cleaner, yet again
this may actually be useful in some way:
-	is there something somewhere which will try to call prepare() on a CustomCommand?
-	if so, will it work now where it wouldn't have before?
-	(certainly not if the app doesn't contain a custom spec, but that still may make something work for all I know)