Factor out test helpers
Implement initial support for stack unwinding.

Implement basic api for figuring out, given a current PC value, where
the function will return. Currently the API provides only a way to
determine the offset from SP (the Canonical Frame Address). It is left
up to the caller to grab the actual address from the traced program.
Rename function for brevity
Refactor: Modify command registraion on bootup

Benefits of this CL:

* Commands no longer rely on closured proc struct
* No two-step process for basic command initializaion
Rename function for clarity
Fix typo
Refactor frame API
Implement initial `next` implementation

This current implementation does not cover the following:

* Setting correct breakpoint when exiting loop
* Setting correct breakpoint when returning from function
    * All facilities are available for this, it just is not taken into
      account in the current `next` implementation.
Ignore tag file
Improve `next` implementation

Improvements:
* `next`ing through a loop works correctly (when not already within a loop)
* `next`ing out of a function works correctly

Needs work:
* `next`ing in a loop can be improved when starting within a loop
Further improve `next` command

* Fixes incorrect loop `next`ing behaviour
* Includes fix for determining return address
Small refactor, only arithmetic once
Update binary prog for newer Go version
Implement frontend next command
Reduce running time / allocations of frame parser
Improve .debug_line parser performance
Remove superfluous documentation
Add line between functions
Improve documentation of LoadInformation()
Update README