This closes #5 #6