Closes #24 Closes #23