WriteResult and related error and exception classes

Relevant issues:

 * https://jira.mongodb.org/browse/PHP-1142
 * https://jira.mongodb.org/browse/PHP-1171 (adding on to what was done in #14)
 * https://jira.mongodb.org/browse/PHP-1172 
hmh? This is destined to be forgotten about.. And I don't think its a good practice to be exposing these things as public properties.
If a writeresult object is supposed to be part of the exception thrown by PHONGO_ERROR_WRITE_FAILED it should be done in a similar _init() method IMO