Mirror the conditions where HashSet implementation is provided to match the compilation conditions in ActivationCache.cs (added MONO)
Switch to storing a (bool)true in the HashSet to reduce object references (even if always null) that the garbage collector must walk.

Possibly should generically expose this for internal use by other HashSet-replacement needs in Ninject.
condition bind to inject an object on one of multiple concrete objects
add unit tests to generic types
add unit test for WhenInjectedIntoOneOf method with concrete types
Extended build script to support branch and pull request builds on teamcity
Add trivial ResolutionRoot.CanResolve overloads
Closes #87
Fixed that multiple bindings are returned for generic type definitions
Closes #92
Moved the release method from IKernel to the IResolutionRoot
Updated release notes
Changed build scripts that unstable nuget version numbers are left padded by 0 to support higher numbers than 9
unstable versions of 3.0.2 are prefixed with 9 so that new versions are higher than 3.0.2-unstable-9
fixed tests and implementation for WhenInjectedIntoOneOf binding configuration
fix method documentation
fix method documentation on interfaces
Added WeakConstructorArgument and WeakPropertyValue that keep a weak reference to the value only so that Ninject has no reference on them when caching the created instance.

Closes #74
Lock the scope rather than the binding. This is probably better for the performance and should fix #97

Needs heavy testing before going live.
Renamed

WhenInjectedExactlyIntoOneOf to WhenInjectedExactlyInto

and
WhenInjectedIntoOneOf to WhenInjectedInto
Added Remove method to Components to support removal of a single registration.
Update ReleaseNotes.txt
ConstructorArgument: Introduced type matching constructor argument.

Signed-off-by: Ivan Appert <iappert@gmail.com>
Binding Configuration Syntax: Introduced binding configuration syntax methods for type matching constructor arguments.

Signed-off-by: Ivan Appert <iappert@gmail.com>