turns out trying to define noexcept in msvs breaks things. compiling with msvs will require the november 13 ctp compiler for now
also it helps to add new files too