Make Console references static instead of extern This avoids unresolved external errors on MSVC. It's not ideal because every translation unit will have its own copy of the references and initialize them separately, but the overhead for calling the instance accessor function is not too large.
Add a wrapper header for windows.h Since Time::min is now defined in the header, it runs afoul of the min() macro defined in windows.h unless the latter is disabled.
Add decorations for things which are considered part of the API