Merge this into #161 before merging that one, so we can have tidy...
This is separated out due to the fact that the noise introduced by this PR would make reviewing it's base PR difficult. But once everything's hunky-dory in 161, merge this into it, then merge 161 and tag it..
161 diverged a bit, so I just redid this against master.
Merge this into #161 before merging that one, so we can have tidy...This is separated out due to the fact that the noise introduced by this PR would make reviewing it's base PR difficult. But once everything's hunky-dory in 161, merge this into it, then merge 161 and tag it..161 diverged a bit, so I just redid this against master.