Many changes and refactrings

    * ADD udlists (array lists)
    * ADD scapegoat trees, a type of self-balancing binary search tree
    * CHANGE tests now are broken into their respective "modules"