fix header-only use of error codes

BOOST_ERROR_CODE_HEADER_ONLY was not working when the headers are separated
from the sources (e.g. when installing the headers to fhs-style /usr/include
or the like). to avoid this, we move the implementation to an .ipp file

Signed-off-by: Tim Blechmann <tim@klingt.org>