Defer loading of entrypoints

Using the @load_subcommands() decorator resulted in an immediate load
of all the entrypoints in the entrypoint group.  This caused a circular
import problem.  This change addresses the issue by deferring the
loading of entrypoints until just before ScriptAdaptor._subcommands is
used, either in ScriptAdaptor.setup_args() or
ScriptAdaptor.get_subcommands().

Corrects issue #1.
Make setup.py executable

I like having setup.py executable; this makes the appropriate change.