Encapsulate mock data

Looking to move metadata for the mock object into a single class to allow for it to easily be put somewhere other than on a mock instance. After doing this the usefulness of the MockReader basically dissappeared. It also would have been tough to use that when the mock metadata is moved.

This is basically all getting ready to enable stubbing and verification of statics.