add translation facility and internationalization messages
add translation classes
Some BC breaks, but it's a Google beta, so ...

- [REF] Remove StdClass typehints (objects don't descend from StdClass)

- [BRK] Remove property $message; replace with $message_map and $message_key.

- [ADD] Property $params to retain params passed to validate() and sanitize().

- [ADD] Methods setParams(), setMessageKey(), and getParams().

- [CHG] Method is(), isNot(), et. al. set the appropriate message key.
BC breaks: convert to use new $message_map, and set params for translations
remove StdClass typehints and add translation facilities
update tests