added basic user autehntication using mongodb
seperate out controllers & cleanup registration process