And adapt all the code that uses it.
This one is a bit mysterious. I can't find any authoritative answer on what the correct behavior is, but it seems reasonable to me that free() doesn't step on errno, since it returns "void" and thus the caller won't know to inspect errno anyway.
Things were getting a little crowded in the project root, so this patch moves the Lib*/ directories into Libraries/.