moved all the security setup from TimesheetEnvironmentLoaderListener.kt to TimesheetShiroSecurity.kt
changed the order so shutdown of datasource happens before call to super.contextDestroyed()