Flesh out Carbonation and add tests