Added a builddir attribute for cabal_install

The `cabal_install` resource can now have a custom `builddir` set.  As part of this, I modified the `flag` method of `FlagStore` to properly ensure that a non-boolean resource attribute's value is properly set when passed to `cabal install`.