Reflecting the decisions during code reviews.

Changing the method naming.
Changing the error messages.
Adding more comments.
Bumping up versions.