Added `size` to the set of available list accessors
* this required the implementation of `Cons` type flattening functionality in `transform.h`
** the flat list of all types in a `Cons` structure is then simply queried using `sizeof...`
* added car and cdr typedefs to `Cons`
** this was needed to actually detect the end of a `Cons` structure