Pull djn's changes into my fork