Removes an ugly hack, introducing a slowdown.
This isn't a great commit. It seems to introduce a slowdown, as well as some 30 new errors. It corrects five existing errors from `<bitset>`, though, and makes constructor detection much less of a hack.
There's still some hackiness to be removed, and some testing to be done to determine the cause of the slowdown.
Error count: 633