Fix compile error that prevented PartialComponent::addInstanceMultibinding() from working.
Minor changes, simplify/remove unreachable or redundant code.
Remove two branches that were never taken.
Remove SemistaticMap::count(), it's never used.
Minor changes to doxygen documentation for Injector.
Slight optimization for the memory allocation in the injector, saving 1-2% of injection time.
SemistaticMap now uses a random seed for the hash generation instead of using seed 0.
Add more tests, increasing coverage.
Remove the BindingData-specific optimization from SemistaticMap (even though this decreases performance) in preparation for later optimizations.
Store dependencies in BindingData, in preparation for the next optimization.
Rename BindingDataForMultibinding->MultibindingData, BindingDataVectorForMultibinding->NormalizedMultibindingData.
Add a SemistaticGraph class and use it to re-implement NormalizedComponentStorage. This is in preparation of a following optimization, for now it's just slower.
Document that factories can't return a naked pointer, and add an error/test. Remove legacy code that dealt with pointers (but was no longer called).
Use the run-time dependency graph to save hash table lookups. Saves 10-15% of injection time.