Added missing header files and libuv is always downloaded/compiled locally

Files that were still missing have been added, and the option of using a system-wide libuv has been removed as it was getting somewhat complicated and didn't actually save much effort for the few people who have it installed. 

If you do plan to resolve this and include the full feature-set in the future, I think I noticed that (and keep in mind I could be wrong) it seemed like the libuv version detection was pulling the version number from the local header files I had to include, and despite the fact that a system-wide version didn't exist, it would then skip cloning and building libuv because it registered an acceptable version.