BinarySearch Tree implementation & traversals
Here are a few things you can do to improve this:


You don't specify visibility of your methods or variables.  Presumably you want your variables to be private, but I'm not sure which of your methods you want public or not. I imagine you don't want setLeftChild or setRightChild to be public since you can't enforce your ordering constraints if anyone can just change children when they feel like it.
Both setLeftChild and setRightChild will throw NullPointerExceptions when passed a null value. You want != instead of == in your check.
Do your nodes need references to their parents?
In your Traversals class you have nodes named parent, but you are actually referring to the root node of your tree. I would rename that.
You don't need to create the other three TreeNode classes since you only use them to get the value that you passed into them when you call insertInOrder.  Just call insertInOrder with the values you want.
You shouldn't pass in the parent parameter to your traversal methods. These are instance methods and can just refer to the member variables directly.
Initialize size once.  Currently you set it to 0 and then 1.
I'm assuming you have plans to use size later on. Otherwise you can just remove it entirely.