signup functionality implemented