Added support for :references, :usings, :vars and :help in REPL

This PR introduces support for the following new REPL commands. Everything works on both Mono and Roslyn.

Additionally added a `Description` to REPL commands to support `:help` and introduced `IReplEngine` as a stepping stone to separate scripting and REPL in the future.

### :help

![screenshot 2014-09-09 17 31 22](https://cloud.githubusercontent.com/assets/1710369/4204430/58a0c384-3837-11e4-840b-995040741ae0.png)

![screenshot 2014-09-09 17 31 47](https://cloud.githubusercontent.com/assets/1710369/4204432/61da1360-3837-11e4-8a14-9676aa99f067.png)

### :vars

![screenshot 2014-09-09 17 32 43](https://cloud.githubusercontent.com/assets/1710369/4204440/76ab6262-3837-11e4-8afc-88bc19209f79.png)
![screenshot 2014-09-09 17 33 17](https://cloud.githubusercontent.com/assets/1710369/4204441/76ac26e8-3837-11e4-8e59-b27788d651b6.png)

Note - there are some small rendering differences due to the fact we rely on the internal mono functionality here. Semantically, it's all the same though.

### :references

![screenshot 2014-09-09 17 33 59](https://cloud.githubusercontent.com/assets/1710369/4204444/849d1302-3837-11e4-8393-8c0d47afa75c.png)
![screenshot 2014-09-09 17 34 56](https://cloud.githubusercontent.com/assets/1710369/4204445/849f4348-3837-11e4-8461-6b8603d37331.png)

### :usings

![screenshot 2014-09-09 17 36 17](https://cloud.githubusercontent.com/assets/1710369/4204456/94935032-3837-11e4-8fe6-fb7611e022a9.png)
![screenshot 2014-09-09 17 36 41](https://cloud.githubusercontent.com/assets/1710369/4204457/949bc078-3837-11e4-91ce-296bc6586205.png)