added user signup functionality