.sh extension for included files

Motivated by Google's shell coding standards. This makes sense for
non-executable files.
Added env var value expectation
Added `declare` as an alias for `set` expectation
Refactored environment expectations to support grabbing flags
Added `exports` expectation
Environment expectations now permit omitting operator

Export expectations will only succeed/fail based on flag checks, whereas the
declare/set expectations will fail on value.
Added environment expectations
Added license to README

And corrected the copyright; copied from GNU ease.js and clealy did a bad
job modifying it. ;)
Runner will now output failure filenames

This is temporary until a proper reporter can be created