Allow `Factory` subclasses to provide field values

Subclasses of class `Factory` can now write out code like this:

    def __init__(self):
        super(PersonFactory, self).__init__(
            entities.Person,
            interface=interface
        )
        self.field_values['name'] = 'Alice'

When this is done, those values will be used instead of whatever would be
generated by `factories._get_default_value`.