added harvesting system components

needs further description
clean up and restructure #23

close #23
added test cases #21