GetTypes because Types doesn't recurse
No point to GetOperand method.
Moved test classes to seperate file