extension tests and added strict mode all over

* I've forced all code and tests to "use strict"
* added two tests for extension validation slight modifications to code to fire errors for bad keys or bad values in extensions