Pass blocks through with `MR::Factory.new`

This updates `MR::Factory.new` to properly pass blocks through
to the record and model factory. This is needed so that default
args can be provided using this macro. This also adds a test to
ensure this behavior works.