Working implementation of basic 'Elective' design

Here is what I have so far, it needs tests, and a more end-user targeted subclass that pulls commands to load from a config file is the next logical step.

However, this implementation is such that you *should* be able to add this support simply by declaring a value of `sub app_commands` which loads the command list from a configuration file somewhere.

However, I do have `dzil` working with it, for instance

```perl
#use App::Cmd::Setup 0.309 -app; # better compilation error detection
use App::Cmd::Elective -app;

sub app_commands { qw( xtest build perltidy ) }
```