Excuse me while I get carried away and write an overly long intro.