Initialize new problems to have the attempts and hints the server says already have happened.

Summary: UserExerciseCache will now send down the lastCountHints and lastAttemptNumber that we can use to initialize the hints and the attempt_number respectively.  This will ensure that attempt_problem will accurately determine if it is indeed a first_response if someone refreshes.  If we eventually trigger hintUsed on $(Exercises) it will also make it clear to the user that refreshing doesn't allow them to cheat.

Test Plan:
Do a problem incorrectly.
Refresh the page.
Do the problem correctly and confirm that attempt_number=2 is sent to the server
Take a Hint.
Refresh the page.
Make sure the hint shows.
Answer the problem correctly and make sure that hints_used=1.

Reviewers: alpert, benkomalo, jace

Reviewed By: alpert

CC: alex

Differential Revision: http://phabricator.khanacademy.org/D2274