Use either CLang or GCC

Oleksandr,

This fixes the VC userland to use CLang on clang-based systems.

It doesn't quite build yet.

Tim