Add more stuff and tests