my best attempts at implementations of various data structures and algorithms