Enable recursively creating parent directories

Right now this is a bit hacky, just shells out to `mkdir -p`,
but it gets the job done.
Merge pull request #30 from elliot42/recursive-mkdir

Enable recursively creating parent directories
Add directory tree listing, subpathing

This commit adds some basic directory-tree operations, based
on `treant`:

You can define your path hierarchy that you want:

    tree = mcv.dir.tree(
      ('/', [
        ('opt', [
            ('framed', [
                ('bin')]),
            ('mcv', [
                ('bin'),
                ('tests')])])]))

Then you can get the most common operations out of it, e.g.

1. Create all the directories