Big Update (pre-cleanup)

Implemented the following since last commit:

Agent destroying blocks

Agent rotating along a horizontal axis

Agent placing blocks

Block dropping dirt items which can then be picked up and placed

Obscuring agent’s view when necessary so he/she/it cannot pickup or
destroy blocks through another block

Did some other refactoring to keep java classes small

Implemented two new propositional functions: 1) BlockAtPF which checks
if there is a block at a specified location — used to get agent to plan
to place a block somewhere. 2) EmptySpacePF which checks if there is no
block at a specified location — used to get agent to destroy a block
somewhere.

Added an agent’s feet burlap agent that moves with the agent so there
aren’t a bunch of special-cased checks on both the agent’s z and z-1

And other stuff!
Syncing Planning Output
Syncing Planning Output Again