Add model to store user’s attempts history: UserAttempt

The model also has some method:
- mark_finished to mark the attempt finished
- get_total_play_count to get all user’s attempts count
Fix the PlayLab view to user UserAttempt model
Fix the FinishLab view to user UserAttempt model
Merge branch 'feature/user-attempt'