A simple profiling mechanism, based on per-position context creation fre...

This suffers from always paying the profiling overhead, but a single hash-table insert
should be relatively tame, in context..

This is just the plumbing layer, upon which I have a "pain point visualisation" pretty-printer,
which overlays points of contention over the parsed text, like this:

;   * core slimefuns
;     - [ ] ping
;     - [X] create-repl
;     - [ ] create-listener
;     - [X] connection-info
;     - [ ] io-speed-test
;     - [ ] toggle-debug-on-swank-error
;     - [X] interactive-eval
;;; ^  193 hits, posn 156:7:0
;     - [X] eval-and-grab-output
;;; ^  385 hits, posn 181:8:0
;;;   ^  257 hits, posn 183:8:2
;;;  ^  257 hits, posn 182:8:1

NOTE: This is an updated version, which fixes a gotcha where cached context references were not counted.