Create `MR::Model::Configuration` mixin

This moves the the base configuration for a `MR::Model` into
a separate mixin. The goal of this is to properly split up the
model's interface into smaller components that work together.
This is easier to test and doesn't mix separate sets of logic.
This is an internal change to the gem and won't change the
behavior of including `MR::Model` to create models. This doesn't
change any of `MR::Model`'s behavior yet. This is just setting
it up.

Related to #70
Merge pull request #96 from redding/jcr-split-configuration

Create `MR::Model::Configuration` mixin