Maid 271 Windows Permissions

This patch will convert Posix ACLs from MetaData to a windows ACL list and then verify access privileges to the appropriate functions. Since every file/folder in drive is currently marked as read/write to the owner only, this patch will restrict access to drive to the user that mounted in windows. No other user will be able to view or modify the contents of the drive. This patch is pretty large, and might need to be held off until drive_v2 is merged into next (talk to Prakash).

I would also like feedback on the error handling. I decided to throw exceptions if a windows function failed - this should only happen in extreme circumstances (bad parameter or out-of-memory, etc.). expect<> might be preferrable here, but its not available, and the error cases should truly be rare.
Based on their examples, it does appear that all given parameters should be non-NULL. Although its not quite clear with the filetime attributes in Mapper::SetFileattributes because it forwards to them to a windows function that can accept NULL parameters. The other attributes are non-NULL and zero if they are to be ignored. Unfortunately, I can't find any specific documentation about NULL expectations for these functions.

I primarily added checks out of paranoia about software "not doing the right thing", and my tendency to assume that pointers indicate that NULL can/will be passed. I would prefer to leave the checks because the overhead of checking is small, but getting it wrong is catastrophic. Anyone else have a thought here?