Code Formatting Conventions

This more or less copies GTK+, except that I'm disastrously bad at getting asterisks in the right place; let's say the policy is one space between a type name and the asterisk(s) or ampersand.

The GTK+ code formatting is more or less the GNU coding standards, except that one space is required between a function name and the parentheses.

For inline functions, I allow the body it to go on one line:
  int foo () const { return foo_; }
  
However if you go onto two lines you have to do it the GNU way:
  int foo () const
  {
    return foo_;
  }
  
No weird hybrids between the two; either it fits on one line or it doesn't.

I don't especially care about limiting the code to 80 columns. People using vt100 terminals are not using newfangled languages like C++.