Add DO-SOURCE macro for iterating over source files
Modify the way source files are listed in *SOURCE*
Allow subdirectories by having a list rather than a keyword in the entry
for a file. For example, the entry:
("foo"
  ("bar" :HOST)
  ("baz" :BOTH))

includes the files `foo/bar.lisp' and `foo/baz.lisp'.

Subdirectories are processed recursively, so arbitrarily deeply nested
directories should work.

A simple DOLIST over *SOURCE* doesn't work any more, as the file list
has to be processed by GET-FILES first. The macro DO-SOURCE should be
used instead. All previous occurances of DOLIST were changed in the
previous commit with the introduction of DO-SOURCE.

Also removed trailing whitespace from compiler.lisp and codegen.lisp to
make my git pre-commit hook happy
Print relative pathnames when compiling test files
Previously absolute pathnames were printed, in contrast the the relative
pathnames printed when compiling the rest of the project.
Merge pull request #136 from orodley/source-changes

Allow source files to be contained within subdirectories