Merging Richard's changes back into my fork.

Let's try this…