Added support for extra <div class="border-box"> in figure postprocessing

This pull request adds support for the functionality described in #80.

If a `<figure>` has a `<figcaption>`, then all `<figure>` content except the `<figcaption>` will get wrapped in `<div class="border-box">` as shown here:

````html
<figure>
  <div class="border-box">
    <img src="images/oia.jpg" />
  </div>
  <figcaption>This could be a figure caption</figcaption>
</figure>
````

If a `<figure>` has no `<figcaption>`, no `<div>` will be added.

HTML5 mandates that the optional `<figcaption>` element must come at either the beginning or end of the `<figure>` element. However, should invalid HTML5 get passed through the XSL stylesheets, where there's a `<figcaption>` in the middle, like this:

````html
<figure>
    <img src="tarsier1.png" />
  <figcaption>Tarsiers are cute. Here are two of them</figcaption>
    <img src="tarsier2.png" />
</figure>
````

Then the XSL will throw a warning message and skip adding the `<div class="border-box">`

All this functionality is controlled by a new parameter called $figure.border.div, which is turned on by default. If you don't want the `<div class="border-box">` to be added to any `<figure>` under any cirmcumstances, you can turn this parameter off.