tests working. Close #31