Removed unnecessary code from pc.c, linked list of heartbeats is freed outside of loop to avoid unnecessary checks within the loop which slow down the code.
Sent heartbeats are matched with received replies, removed from linked list as necessary.
Fixed a bug in pc.c, where if a heartbeat was sent, cur would be stuck on the same pointer every time. Reasons unclear, however linked list seems to behave properly, and output now correct, so not of concern at this stage.
Added debugging output for matched response/heartbeat pair. BEWARE: Code does not seem to work for optimization levels higher than -O0, however does seem to work on default if used with valgrind. Possible race condition, must look into.
Added timeout to sent heartbeats, after 400ms, in PC. No processing of unresponding nodes at this point, simply removes heartbeat from linked list.
Fixed infinite loop upon receiving response for heartbeat not in linked list. Work on this cannot be completed until UCI integration has been achieved, however an infinite loop should still be avoided.