Closes #10,#11,#12,#13,#14