init no longer takes a callback