Experimenting with creating custom data structures in Ruby using TDD