Revert "Revert "90% complete""

This reverts commit f17f64467dad71db531ed70e2d127e256e8fece5.