Add better user interface with flare!

Moves list to bottom of page to avoid DOM element jumping (the div would
jump around). Uses jQuery's callback mechanisim to chain animations and
block display of execution so the user can actually see the loading
screen (some browsers are just too fast!).

jQuery doesn't support it's promises in normal show/hide but instead
uses a callback pattern. Using Q we can support this with it's deferred
object.

    function deferredShow(selector) {
      var defer = Q.defer();
      $(selector).show("fade", 1000, defer.resolve);
      return defer.promise;
    }