Code regions

Originally from Alan Drake, this adds the ability to fold arbitrary regions of code using the directives "#region" and "#endregion".