Add methods required in silo.

* copy ctor (and template variant)
* assignment (and template variant)
* emplace_back()
* front()
* rbegin()/rend()
* unsigned size_type
Minor nit.