Add Problems#edit and #show JSON jbuilder thingy, but are not used anywhere yet.
Refactor AngularJS code.

This is a gigantic commit:

1. authenticityToken and problemId directives replaced with
   AuthenticityToken and ProblemId services (and are available by
   including modules of the same names). Two HTML/ERB partials
   (partials/authenticity_token_provider and problems/problem_id_provider)
   can be included to have these two values correct set.

2. Completely rewrite ProblemsHelper. Using $resource to do the work.

3. Minor modifications to ProblemPage to use the new AuthenticityToken and
   ProblemId services and also the new ProblemsHelper.

4. A bit more modifications to ProblemForm as the responsibility of processing
   `problem` before saving (setting order for each task and the _destroy key
   for permalink) is delegated back to ProblemForm.

5. For ProblemsController, whenever a JSON response is expected, the jbuilder
   files introduced in the previous commit are used instead of using
   `render :json` and `#to_h`.

6. Because of 5, #to_h of Problem and Task are no longer needed. Hence, they
   are removed.
Validates tasks when saving problem.

Fix #11.
Missed out the mechanism to submit answer.
Sort the tasks according to their order when generating JSON.

Addresses #21, #22.
Merge branch 'master' into angular-refactor
Merge branch 'angular-refactor'

Conflicts:
	app/assets/javascripts/AngularJS/ProblemPage.js.coffee
Include points in the show JSON.
Not show some information on user profile.