moved LOGIN_SESSION_TIMEOUT 'CUSTOM' code to custom_timeout() sub; C::Admin::User::update_user_details() retrieves new user.id to fix (recent) uninitialized val warning in permissions.t; added debug.log fh to L::Local::Debug::DEBUG(); added 'function' object to M::User::get_user_permissions() to save multiple db lookups
new admin function to register new user from email application; moved C:::User::_generate_new_password() to C::Roles::User for sharing with C::Admin::User::new_user()
moved C::Outreach::get_blood_tube_type() to C::Roles::Misc and moved tube type definitions to yaml file; changed C::A::C::OutreachPractices to Moose class to load C::Roles::Misc; added sort_by to M::User::get_user_locations()