Remove unused errmsg arg from php_mongo_get_reply()

This was not used in any calling context and was likely a remnant of legacy code. Additionally, it did not appear to be freed in the error code path for MongoCursor::hasNext().
Fix MongoResultException reference when updating document property
PHP-708: Implement WriteConcernException for GLE errors

This also adds error checking for the GLE command itself, using the same function that findAndModify() uses to inspect the command response.

If the GLE response is successful, the write operation is considered to have failed if the "err" field is a non-empty string. Previously, we sourced the message and code from the "errmsg" and "n" fields, respectively, which was incorrect.
Change mongo_cursor_throw() to require exception class entry

Rather than infer the class entry (previously Cursor or CursorTimeout) from the error code, explicitly provide it. This makes it much easier to throw WriteConcernExceptions consistently (ensuring the host prefix and property are set) without having to anticipate error codes in GLE responses.
Do not use CursorTimeoutException for server-side cursor timeouts