Move lazy decomposition tree traversal to utils.
Refactor pipeline. Use current pipeline implementation as a driver and move executor and driver communication mechanism to pipeline. Executor is now running as a thread.
Fix test.
Merge pull request #21 from d2rk/refactor_pipeline

Refactor pipeline
Move base to math utils.
Move OptimizationParameters to mp_model proto.
Refactor MP model.
Fix MPS data.
Refactor MP model proto. Now decomposers, executors, drivers, backend solvers, etc. have own parameters.
Refactor MP model proto. Now decomposers, executors, drivers, backend solvers, etc. have own parameters.
Generate short UUID.
Add drivers. Driver represents solving logic.
Add local elimination driver that implements local elimination algorithm.
Optimization parameters wrapper.
Add generated protobuf.
Fix demos.
Merge pull request #22 from d2rk/refactor_mp_model

Refactor mp model
Fix mp model build bug.
Merge pull request #23 from d2rk/fix_mp_model_build_bug

Fix mp model build bug
Merge remote-tracking branch 'upstream/master'

Conflicts:
	src/main/python/les/base/sparse_matrix.py
	src/main/python/les/base/sparse_matrix_test.py
	src/main/python/les/base/sparse_vector.py
	src/main/python/les/base/sparse_vector_test.py
	src/main/python/les/mp_model/mp_solution.py
	src/main/python/les/utils/math/__init__.py
	src/main/python/les/utils/math/sparse_matrix.py
	src/main/python/les/utils/math/sparse_matrix_test.py
	src/main/python/les/utils/math/sparse_vector.py
	src/main/python/les/utils/math/sparse_vector_test.py
	src/main/python/les/utils/sparse_matrix.py
	src/main/python/les/utils/sparse_matrix_test.py
	src/main/python/les/utils/sparse_vector.py
	src/main/python/les/utils/sparse_vector_test.py