closes #33, closes #32