Don't return nil when trying to install an already installed component, return the installed component instead. Also, use each_with_object instead of reduce where appropiate.
Merge pull request #5 from lasso/master

Don't return nil when trying to install an already installed component, ...