added basic login framework