Code Folding for Classes #21

https://github.com/forcedotcom/idecore/issues/21
Thanks for the pull request. This is indeed a popular request feature. Some comments:

Probably should apply an "Extract Method" refactoring to these statements so that they don't bloat the run method.
Should also do some check (see canDisplayOutline) since it is not always safe to assume that everything that is typed in can be parsed fully, which means that accessing the nodes in the parser might not be possible.