apache module: test config before attempting restart

In an ideal world we'd never deploy broken Apache configs. But unfortunately
sometimes we do. In such cases, attempting to restart Apache causes the service
to stop and then fail to start, which leaves us dead in the water. To avoid
that, we should run 'apache2ctl configtest' before attempting a restart.

We could add an onlyif => 'apache2ctl configtest' parameter to the
Exec['apache2_hard_restart'] resource, but the problem with that approach is
that Puppet will be silent about broken configs. The service won't be
restarted, but there won't be any feedback for the deployer.

So instead make it a separate Exec resource that notifies the restart Exec.
This way, if configtest fails, Puppet will fail loudly.

Also remove the status check from the apache2 restart Exec. Since it depends on
the service (which is ensure => running) it must be true that Apache is up.

Change-Id: Ic095c2e78a3e48a01a6d6331f49cee2850582d92