Refactoring main push body in pushpackage

This is a grand combination of __init__.run_pushpackage, __init__.pushpackage,
and push.py. The dependency checking should be pulled into a separate executable
that can be used from either the command line or by internal tools.