Making loader() non-intrusive

Currently it's not possible for themes to customise the ajax loader.
I've solved this problem by having the loader() function not append any
elements to the DOM; instead it simply adds the class "ajax_loading" to
the host element (post, comment) on which it has been called. With the
power of CSS we can leverage the "ajax_loading" class to do almost
anything we want to the host element in terms of graphical effects and
displaying gadgets.

Removing the DOM elements also sidesteps a problem I've noticed:
loader() is not able to properly account for CSS box-sizing, meaning
that it displays in the wrong position on screen when the host element
is rendered with "box-sizing: border-box".