feat(*): introduce subcommands

Drop -action= and use subcommands instead. This should lead to lots of
code cleanup opportunities too.
Merge pull request #5 from philips/subcommands

feat(*): introduce subcommands
fix(client): move client to after arg parsing
fix(regions): fix up region handling
fix(default): unset default region, so it is picked per provider
chore(drivers): cleanup formatting a bit
refactor(drivers): put the drivers into their own package

This is the first step towards more refactoring but put the drivers into
their own packages. This seems to work fine.
Merge pull request #6 from philips/local-driver

refactor(drivers): put the drivers into their own package