Fixed the bug in which refreshing the timeline lost the visible time

Previously, if the user tried to load a URL such as
/app/calendar/timeline/date/2012-11-01 by copy-pasting into the address
bar, the timeline appeared showing data from the most recent 24 hours,
not data from November 1, 2011.

The problem was that, if setRange (in Grapher.js) tries to set the date
range but the date axis hasn't been initialized yet, the function
just logs that there is no way to set the bounds on the date axis and
does nothing else.

The fix was to create a new onLoadActions property in a Grapher object
(again, in the Grapher.js file), and change the onLoad function to call
all the functions in the onLoadActions field.  This way, if someone calls
grapher.setRange before the date axis is initialized, the change is
applied during the onLoad callback, once the date axis has been
initialized.