Splitting the Trunk subcommands/subclasses into separate files for clarity

@alloy a quick approbation/code review before merging?

Especially is it a good practice to keep the private methods in `trunk.rb` as they are used by subclasses in `trunk/*.rb`? (It seems ok to me, but maybe the official practice is to create a "Helper", I don't know)
Ruby always returns the result of the last expression, which will be `nil` in this case. When in doubt, verify with IRB :)

```
~ » irb
irb(main):001:0> 42 if nil
=> nil
irb(main):002:0> 42 if 'some/path'
=> 42
```