Yet another refactor (I want to get this right)
Bump version to 2.1.0