lazy alloc component container

faster and less memory