Closes #29.