Compile to multiway join option

* [x] add an option to compile to multiway join with hyper cube shuffle.
* [x] put compile to multiway join and profiling into developer options tab
![screenshot 2014-06-19 16 48 21](https://cloud.githubusercontent.com/assets/720571/3335117/7fc44b90-f80c-11e3-9475-a5feb7bf4146.png)

why not just store `rel_key` in the cached? What's the purpose of the string?