added sign-up functionality [not finished]