Refactor a bit around new thinking