Passing CRAN and expanding test coverage

Close #37. Close #38. Accomplish many of the tasks on #32. 

Add unit tests for all helper functions for `caretEnsemble`. Expand unit test coverage to smaller helper functions like weighted standard deviations. Fix `summary.caretEnsemble` to produce correct results for ensembled models. 

Still need to make the `predict.caretEnsemble` output more consistent across different options. 

Fixes a number of issues related to `varImp`, though it does not fail gracefully in the case when `varImp` method fails for a specific method passed to `train`. 

Added a new test suite using more diverse `train` methods and some missingness. This checks against some errors relating to building to specifically to the included test models and only increases the size of the package modestly. 
I think setMethod is still going to create an S4 method. I guess this is sort of a design issue: do we want to use S4 classes (with S3) methods, or just S3 classes with S3 methods?
    
Personally, I prefer pure S3 classes and methods, as I always get really irritated when I try to get the source code for S4 methods from other packages.  I also think caret uses pure S3 methods.