Add define guards to header files
Major refactor and possibly improvement

Incl. timeout after junction mark.