Improved html-builder

- made error catching more accurate

- added --var to command line to pass key:value pairs to script to
  change %%key%% in the html to 'value' in html file.  This is mostly
  to pull data from the config.ini file.

  eg: --var=dog:arff
    changes: <p>a dog makes an %%dog%% sound</p>
    to:      <p>a dog makes an arff sound</p>

- the <template:parent> tag can be used to override the defaultparent
  command line command

- the <template:filename> tag can be used to override the filename
  command line command.  It will be used as the destination filename

- any tags in the content html file that look like this:
  <template:key>value</template:key> can be used to change [key]
  to 'value'.  Generaly this is used to pass values to the parent html
  file.  For example, it can be used to change the title for each doc.

  eg: <template:title>Home Page</template:title>
    changes: <title>[title]</title>
    to:      <title>Home Page</title>

- builder uses the changed command line syntax