Closes #10: Tested and works well with updating latest changes