Provide singular versions of repository helpers

No need to instantiate a RecordMap when we only have one record.

We're also now providing an attribute_names method on Repositories.
While it defaults to the record class's attribute names, it doesn't have
to stay that way. If we want a repository that only fetches, inserts,
updates, etc certain attributes we should be able to build that.