Significant refactoring; autogenerate CLI commands

(This is a continuation of the previous commit, in which several
changes in my working tree were not staged for commit.)

This revision uses a more complex setup.py with entry points
to autogenerate CLI commands. euca_conf also uses these entry
points to redirect from old euca_conf options to new command
names.

The validator code has been changed to have better defaults
(in constants.py) and allow for overrides via eucadmin.conf or
environment variables.
Fix typos in modifyclusterattribute
Make setup and constants virtualenv-friendly
Fix service URL precedence