teacher and api_key modeling
move api key generation to service object