Add a storage_size_ setting

storage_size_<N> is a setting that notify the container that
its storage will be an automatic storage of N elements. Compared
to of_size_ and automatic_/dynamic_, storage_size_ allows for
the actual extent of an automatic_ container to be mutable as
long as it fits inside the mmemory allocated.

By default, of_size<...> is considered as:

  storage_size_< of_size_<..>::static_numel >

if the of_size_ is static and as:

   storage_size_<-1>

otherwise. Using of_size<> with static dimensions also now force
the automatic_ storage duration.

Note that using a storage_size forces the storage duration to
be automatic_.
Move cons preprocessing to proper CMakeLists.txt
Adapt cons to use storage_size
Simplify expression option retrieval
Merge pull request #767 from MetaScale/issue_390-storage_size

Fix for #390