Restructures project layout.
Adds interface for tree implementation. Removes enum for tree types. Basic implementation of balanced binary tree.