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 that only makes sense if we make a `print.summary` method. Otherwise, I think the use typing `summary(myCaretEnsemble)` expects output and wouldn't want to suppress any part of the summary output itself. If we use `message` and the user suppresses the message, I'm not sure what `summary(myCaretEnsemble)` would return that would be of value.