That sounds good, Luke. I intended to do it right from here, if it wasn't for the size of this merge. Between doing it right and keeping the existing behavior (for stability), I made a conscious decision of going with stability. But I'm still interested in getting this right, therefore the TODO comment under my name. I hope that's agreeable :)