add relationships to models
add authentication to user model