Closes #17 and closes #16