Separate LfdEnvironment from simulation and separate simulation abstraction.
Fix merge conflicts in environment
Make upload ignore cache files and fix unpacking bug in download.
Implement filling eval_stats, clean up eval_on_houldout and simulation bug fixes.
Merge branch 'dev' into mmqe

Conflicts:
	core/environment.py
	examples/eval.py
Change some __repr__ to print the actual derived class the instance is
Add flag for checking or ignoring feasibility
Modify observe_cloud so that it filters out points under the table and also plot the scene's cloud in eval_on_holdout
Change the simulation's state so that set_state can reconstruct the full simulation with arbitrary different objects and stop explicitly removing the kinbody from the viewer (now done in trajopt's update)
Fix saving results args
Change class of construction info to be a string representation of it in order to save/load sim_state
Bug fixes on setting simulation state and implement replaying in eval.py
Reset simmulation state when retrying after finding infeasible trajectory
Changes to holdout and loadresult items
Add scripts directory, add auto_performance script, and move eval.py to the scripts directory
Merge branch 'dev' into mmqe

Conflicts:
	core/environment.py
	scripts/eval.py
fix beam search with new env/sim code
bug fixes so beam search works