Now the .exe extension is handled correctly on windows.

This used to work, but broke at some point, so I worked around it using specific .exe executables
Added profiling capability (related to #16)

This is how it works:

---with-boot-profile[=sort-field[,field]]
    Run the profiler from the moment arguments are parsed, right before the application is executed, and
    print the results to stderr..
    The optional sort field can be tottime, filename, and basically any column you see in the report.
    Defaults to 'cumtime'
Implemented quick and dirty cache to reduce yaml loading times

The cache writes to a local temp directory, and reads from it as well.
It must use pickle, unfortunately, which isn't the fastests, but better than anything else that would work.
It should of course be possible to disable the cache, even though in common operation you would always want it.
It won't reduce the IOps at all (especially those over the network), but merely reduces yaml decode time.