Closes #5 and closes #6.