Convert Spaces To Tabs For Controllers And Update Guidelines

This converts spaces to tabs for controllers and does some other minor code cleaning up.

It also adds some information to the contribution guidelines to reflect this change and includes some long used but never documented information about the way we use branches, partly for our own record.