cpack: handle 64-bit Windows installation better
utility: add support for paths relative to running binary

- remove data directory hard-coding, as this approach will not
  work (see comments in path.hpp for an explanation).
- fix header guards in a few filesystem headers
- delete duplicate invalid enum value exception file
- rename paths header file to just path
- implement data directory as a series of look ups relative to the
  binary path.
- make test data directory relative to the running binary path, now we
  have support for it.