Implement user sign in.  Closes #59