Correct casing on filenames

Painfully obvious when building on Linux
Add noexcept specifiers
Include typeinfo header for RTTI
Don't use 'npm.cmd' on non-windows platforms
Exclude arch-specific files on different platforms
Stub the sockets server for UNIX builds

To start with, let's get this working on Linux anyway
specialized hash should be const

One of those things that inexplicably works on MSVC
POSIX Sockets server implemented
Fallback: multiple funcs instead of default values

Using default values with init lists, such as 'headers = {}'
where 'header' is an unordered map seems to be broken in GCC 4.9

AFAICT, it's a known bug which has been resolved, but I'm not going
to patch my GCC to get around this.
Swap unordered map to vector of pairs

Well. That was stupid. The routes *need* to be ordered since
they're matched top to bottom.