added Spanish locale 'es' functionality and tests