Closes #39, closes #34