Closes #53
Closes #55, Closes #54