Added signup form, error messages and tests