Closes #25 and #30