Feature/cpp indentation

This PR brings better indentation rules for C/C++ modes in the IDE. It's not completely finished (I rely too much on heuristics / regexes vs. token walking) but it does surprisingly well (given the automated tests).

I've tried using this to re-indent e.g. code within the RStudio sources as well as Rcpp itself, and it does a good job overall -- there are still some hiccups for 'irregular' code that would be fixed by better token walking, but it does a good job of handling the 'common' indentation styles.

The best way to play around with this PR is to open the `src/gwt/test/autoindent_test_cpp.html` file and play around  / see what succeeds and fails.

(Let me know if you would prefer I squashed the commits before merge as well)
Some of the diffs will be noisy because I switched from 4-space indent to 3-space indent; but mostly the files are best read standalone anyhow because so much has changed.