Fix scratchpad show/hide race condition

Summary:
Loading the scratchpad asynchronously at show() time meant the following
race condition could occur:
code calls Khan.scratchpad.show(); // fires require("./utils/scratchpad.js")
code calls Khan.scratchpad.hide(); // (or Khan.scratchpad.disable())
require("./utils/scratchpad.js") calls it's callback and shows the scratchpad
Now the scratchpad is showing but disabled.

Test Plan:
 * Set LocalStore.set("scratchpad:" + user, "{}"); to enable
   the scratchpad on problems by default.
 * load http://localhost:8080/math/algebra/linear-equations-and-inequalitie/graphing-linear-inequalities/e/graphing_inequalities_2
 * make sure the scratchpad is disabled after loading the problem.

Reviewers: alpert

Reviewed By: alpert

CC: marcia, alpert

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