Single phase allowed for multiphase FE

Fix #106

Fixed bug whereby the 0 and (n_phases - 1) phases have to be present
in the X array when using ElasticFESimulation.
Add spherical microstructure generator

Fix #111

Add a SphericalMicrostructureGenerator class that creates
non-overlapping, periodic spherical particles of one phase within a
matrix of another phase.

Created a common base class for microstructure generators.
Merge pull request #107 from wd15/issue106

Single phase allowed for multiphase FE
Merge pull request #112 from wd15/issue111

Issue111