Google summer of code midterm review

Submitted on behalf of @rkojcev.  @jrgnicho and @shaun-edwards, please review.
There are quite a few magic numbers in this file, colors, arrow lengths etc.  We might consider consolidating these as constants at the top of this cpp file.