Sequential Particle Swarm Optimization. SequentialOptimization class accepts the function and parameters at creation time and returns the optimal parameter values when optimize() is called.

Classes created: FunctionCallable, PSOFunction, Particle, SequentialOptimization, SwarmDriver
added .gitignore with bin as contents