move is_compatible and all_compatible in their own file
reclaim the name LazyVector, but to do something different from what Rcpp does with it. LazyVector are essentially sugar expressions on which we cannot use operator[]. #167
add some genericity in vector to avoid copy and paste
using macros to reduce copy and paste in Vector
use multiple include instead of a macro