Moved type checking of RelativePointer template into private typedefs
* Having them as default template arguments worked as well but this approach is nicer in my opinion.
* optional: static_assert to check types could be a even better approach