Organize factories into sub-files, for easier readability

The record and model factory classes were getting lost in the
main factory file, so I wanted to split them out similar to how
stacks are divided up. This makes it easier to read their code
and find the classes. I also renamed them to have the `Factory`
suffix, as there are a lot of "models" and "records" in MR and I
wanted it to be easy to identify what these were.
Organize `MR::Stack::Record` with the `RecordStack`

This organizes the `MR::Stack::Record` in the `RecordStack` file.
This class is mostly a utility for the `RecordStack` so it should
be organized with it. This is consistent with the factory
organization and removes another "record" file in MR.
Merge pull request #52 from redding/jcr-split-factory

Organize factories into sub-files, for easier readability