Fixed HistoryHeap to match heap interface again

Due to misunderstanding of heap interface, things had been built
incorrectly so until a workaround had been found, the heap was not
working properly.  Changed functionality to match heap{} again, now code
cleanup necessary.
Debuging return to heap interface for HistoryHeap

Refactoring to use the heap interface, and changing message calls to
match debugged pattern for HistoryHeap.
Appeasing GoLint and commenting out debug print
Removing commented deprecated Len function

Old Len function code was commented out but not removed, now deleted to
cleanup code.
Modifying HistoryHea.Len to handle bad indexes

In the case that an index element requested is beyond the limit of the
heap lenthg, an empty string slice will be returned.
Fixed index length expression bug

Bad expression allowed for indexes to be requested form the HistoryHeap
which is beyond its potential length. Improved Unit tests to catch
assertion.
Changing bot.ChannelHistory definition to pointer

Changed ChannelHistory map to reference pointers to the HistoryHeaps
rather than direct references to the struct.