Move border to container rather than root block

...so that the border can be styled (or removed) by code external to
MathQuill without having to know any internal CSS class names like
`mq-root-block`.

(The `box-shadow` has to be on the container too because the root block is
inside and therefore on top of the container, so the `box-shadow` would
cover the changed border color. Even if it didn't, it makes the most
sense staying with the `border`.)

The `padding` absolutely has to be on `span.mq-root-block`, though, because
it's `overflow:hidden`, so without the extra `padding` inside its scroll
area, the cursor is hidden when at the left edge.

This does mean the dimensions are no longer like what I thought replaced
elements were like and uses the brain-dead Netscape box model, but it
turns out that at least `textarea`s and `input`s actually use the Netscape
box model anyway (in Chrome 34, at least): http://jsbin.com/qoceda/3/edit
Which makes sense since, like we want MathQuill math fields to be, their
`border` is configurable with external CSS. In fact, their `padding` is too,
so it actually kind of sucks that our `padding` can't because its not
the container that's `overflow:hidden`.

Recommend -w to view diff.