Add better errors
Unit tests for user model