DUI: key navigation. Part 3

Yellow navigation is from [first PR](https://github.com/Benglin/Dynamo/pull/123).
Pink is from [second PR](https://github.com/Benglin/Dynamo/pull/127).
And green is from this one.
This PR makes navigation between categories possible.
![image](https://cloud.githubusercontent.com/assets/8158404/4702751/8d194b42-5865-11e4-9709-ef0f2deffccb.png)
This PR should be merged after [second](https://github.com/Benglin/Dynamo/pull/127).

Reviewers
@Benglin ,@vmoyseenko, please take a look.

Link to YouTrack:
[MAGN-5072](http://adsk-oss.myjetbrains.com/youtrack/issue/MAGN-5072) DUI: Navigate between Categories
What if ```parent``` or ```generator``` is ```null```? I think none of the callers are anticipating this to be the case, but I'm just guessing, will it happen?