An Implementation of Cheney style garbage collection for use with cons cells and atomic data which is represented as a tagged pointer or NULL. Dynamic heap expansion as well as explicit heap resizing is allowed. The heap is also encapsulated allowing multiple to exist simultaneously as well as enabling an extremely well defined API. Automated extensible table driven testing is also included to ensure correctness and compatibility.