My implementation of a suffix tree in C++