unit tests
remove reflection
make model expire come from config, but overrideable