Collapsable lines in procedure windows

Some programming gets extensive, and it would be great to have an option to collapse encapsulated lines such as the contents of if-statements, loops, and entire functions. Additionally it would be nice to be able to group functions and collapse a group. This would be purely aesthetic, but would make navigating through code far easier.
That's a top idea and links in to what I was going to suggest...

I would like to see something like the 'automatic variable highlighting' used in matlab, whereby if a wave/variable was selected other occurrences of this throughout the procedure would be highlighted (e.g. http://blogs.mathworks.com/community/2010/10/11/automatic-variable-high…)

This is especially useful for debugging and tracing the source of a particular wave. At the moment using control and f feels clunky and is quite time consuming