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. 
That's it. Should we force them to be S3 then?