Refactor to allow trellis/traceback path caching

Cache the ones we've calculated so, eg, we don't have to recalculate the
v gene one unless we change k_v.

Also:
  - added color and improved formatting to alignment output