Note that this inheritance hierarchy will likely change once the ```Parameter```/```CommandIn```/```CommandOut``` stuff is in place.