Make updates.

Lots of cleanup and good reorganization. A lot of testing still needs done,
but most if it looks ok. There's one snag remaining between cmake, cl.exe,
and cygwin w/ unix vs. windows paths, but I think I can clean that up.