Clean up the test suite.

Remove unused files.
Add warnings above file headers that they're not meant for use.
Extend the shell script to take files as arguments.
Move around some code.
Patch edebug's gensym to use names prefix.
Reimplement defalias and defvaralias.
Add reminder to fix lazy logic.
Add google-this tests.
Improve tests
Use cl-letf for overriding functions, instead of doing it our way.
Simplifly convert-define-derived-mode to just namespace everything.
Travis build file.