closed #3, closed #5 initial work started on #6