Make port definition optional

Based on the use of the mongod process it should listen on a different
port[1]. configsvr should be listening on 27019 and shardsvr on 27018.
Currently, since the port is speficied in both init.pp and server.pp
even though the server is start on the mode mentioned above it will
listen on 27017, which is wrong. It is backward compatible since by
default if no port is specified it will listen on 27017

[1] http://docs.mongodb.org/manual/reference/default-mongodb-port/
Ensure rs.conf() is run on the proper mongod process

Currently, rs.conf() can only be run on 127.0.0.1:27017.
When running a node in shardsvr mode, the mongod process
listens on port 27018, hence the rs.conf() check fails.
Add support for mongos configuration
Implement Sharding Support

This patch aims to support MongoDB sharding feature.

* Add a Type and a Provider to manage a MongoDB Shard resource.
* Add tests/sharding.pp to show an example of usage.
* Unit tests for the new Type and the new Provider.