Allow overriding records manager class in register

By calling register(Model, records_class=Foo), a user can choose a
different class than HistoricialRecords to use for the manager.  A silly
example is included for tests.  A more serious example is at:

https://github.com/jwhitlock/web-platform-compat/blob/master/webplatformcompat/models.py#L38
That's fine then... The way to make the function available on the package without importing models would be a lazy-function, but that's worse than `None` checking.