Command Interface

This isn't ready for merge yet, PRing for code review/comments.
If i'm reading this right, it means:

```sh
cmd1 cmd2 -abc foo bar baz
# path: cmd1 cmd2
# opts: a, b, c=foo
# args: [bar, baz]
```
?

it's kinda sketchy. I think multiple flags in one blob should only be ok for booleans...