Fix for Issue #50

When someone uses the line
Container.Register(Classes.FromThisAssembly().Pick().WithServiceFirstInterface());
it seems to create an instance that causes
ComponentConverter.CanHangleType to return true.

If i switch the order of AttributeAwareConverter to be before
ComponentConverter it works fine
Update to fix from comments

Added guard clause in ComponentActivator to return false if the
ReferenceExpressionUtil cannot extract the component name from the
value.

Fixed issues with some comments, removed un-needed files, renamed files
and test cases
simplifying conversion handling
fixing possible null reference race condition under certain scenarios
fixing potential race condition under certain scenarios