CXX-191 add optional extra parameter support to createCollection

Note that I changed the API here by putting the `extra` option argument before `info` (the output parameter). I wouldn't be hung up on changing it back so that the options come after the output to keep things the same. Let me know what you think.
Per your top-level comment. Another possibility to consider would be to overload:

createCollection(..., BSONObj* info);
createCollection(..., const BSONObj& extraOptions, BSONObj* info);

Then of course the first overload just forwards to the second with a BSONObj() for the penultimate parameter. That way you don't break the API (unless users were taking the address of createCollection, which seems somewhat unlikely).

It wouldn't be too much more typing.