New PR for this reviewed one !13 (merged)
I forgot to squash the commits, so I'm doing so in this one