Refactor to stop passing Templer::Global around.

  This is a quick and dirty migration to ensure that the chain
 of execution goes:

    * Create Templer::Global to read the config file.
    * Parse the command line.
    * Merge the variables.
    * Pass those merged variables to Templer::Site->new();

  The plugin API now takes a reference to the Site object, to find
 values and this means nothing should touch Templer::Global but the
 setup code in templer.in.

  The test suite passes, but the plugin tests still need to be updated
 to refer to Templer::Site not Templer::Global.