OpenRocketAPI PR#2

2nd half of the squashed  https://github.com/openrocket/openrocket/pull/185
first 11 commits are part of previous PR (https://github.com/openrocket/openrocket/pull/186)
>Hello, we are a group of CS majors and have been working on this as our Senior Capstone project.
>Our goal with the API was to allow for running simulations by use python scripting, or other scripting >methods.
>We have added the API as a way to load an ork file, run a simulation, and retrieve data from the >simulation.
>Additionally, to allow for hardware in the loop testing we have added a stepper that runs the simulation >one step at a time, to allow for real-time data transfer between openrocket and the flight computer of a >rocket.

>The flight computer in our case was av3-fc, and the scripts we wrote to interface between the added api >and the flight computer are here RocketTalk

**OpenRocketAPI** - full doc [here](https://docs.google.com/document/d/1bqE8ya6tqyTtWwuGL_JRSwn1MrB5luph2YhbDAW-3KE/)
	Provides an API for external programs to run simulations in a scripted environment, as well as running a simulation step by step, retrieving data at each step
	
**BasicEventSimulationEngine/BasicSteppingEventSimulationEngine** - move the inner loop to its own function, removes the duplicated code in the derived Stepping Class

**APIBlockingMotorDatabaseProvider** - overloaded BlockingMotorDatabaseProvider to remove dialog box when loading motors (for use of API)

**APIGuiModule**- overloaded GuiModule to use APIBlockingMotorDatabaseProvider (no dialog box for loading motors)