Closes #37, closes #43