Got compile and link working

You can now successfully compile and link a project with inremental
builds based on build.yml file. For example:

  doit <platform> [--verbose]

or

  doit --clean [--verbose]

are or both working properly.

There are still a couple main issues:

 1) Cannot specify extra include directories (eg: include/mac/sdl)
 2) Cannot specify static libs to include (eg: lib/mac/sdl.a)
 3) File manifest information is not cached or incrementally updated so
    might cause performance issues with larger numbers of files.
    Currently it has to find every file and get its timestamp every time
    you build. The only way I can think of to really fix this is with a
    daemon process that listens for file changes.