(MODULES-690) - Rebase of #115 and fix other problems.

- Add `mongodb_conn_validator` resource to block until the service is
  ready to accept connections. Goodbye sleeps! (May lead to increased
  puppet runtimes due to mongodb being so slow.)
- Make `Class['mongodb::client']` work on debian if a client package is
  available, such as when using the mongodb official upstream repo.
  Otherwise the class is a noop. This class used to just raise a warning
  on debian and do nothing ever, which meant you couldn't install the
  upstream mongodb client shell.
- Correct dbpath, config path, and client package name on debian.
- Update the tests and remove all the sleeps

Closes #115