Fix #321 - root_user should be setup before configuring backup user

Otherwise puppet might try to setup the backup user even before
the service is running and will fail.
Use https url to make puppet-librarian more proxy-friendly

For people in restricted networks it's quite common to not
be able to use git:// urls, but https-urls work through proxies.
Add $restart support.

Previously this parameter did nothing, lets make it actually work.
Fix a few tests.
Add a comment to make this clearer.
Apparently we were restarting no matter what the parameter said,
awkward.
Merge pull request #401 from apenney/restart

Restart
Support multiple lines of the same option

  Some MySQL options need to be passed several times. For example :

  http://dev.mysql.com/doc/refman/5.5/en/replication-options-slave.html#option_mysqld_replicate-do-db

  This is currently impossible with the override_options. This patch allows to
  pass array as value. Example :

    override_options => {
      'client' => {
        'password' => 'xxx',
      },
      'mysqld' => {
        'bind_address'    => '0.0.0.0',
        'replicate-do-db' => ['base1', 'base2', 'base3'],
      },
    }

  Which will be evaluated into :

    [client]
    password = xxx

    [mysqld]
    bind_address = 0.0.0.0
    replicate-do-db = base1
    replicate-do-db = base2
    replicate-do-db = base3
Merge pull request #398 from fridim/support_multiple_values_in_config

Support multiple lines of the same option
Merge pull request #400 from duritong/fix_backupuser_dependency

Fix backupuser dependency