added user profile functionality