I wish C++ didn't demand that functions have to appear before each other in lexographic order. =/