Refactor to allow for multiple problems

- Observation still needs to be taken care of.. Using static casts after
  inheriting from an ABC was too slow, need to think of a better solution
- Merged all experiments into one binary controlled by command line arguments
- Add limited_laser results