Generic Trees

Hey I restructured things a bit.
Your function, parameter, and constant nodes can be found in Node.scala.
Attempts at generalizing function can be found in Tfunc.scala (Still need sure what T stands for, tree?)
Comments with '//' are failed attempts to generalize.
Change some of the 'Any' stuff to 'AnyVal', I think this is the right move since were are working with Java primitives (unsure though).
Some things have been renamed.
The test has a lot of comments, eventually I want to add actual tests, meaning we should be able to set the random seed.