add the capability to clone all components of an entity

this provides functionality that i require...that is, duplicating e.g.
items that are to be dropped. one would want to make an exact (deep) copy
of everything in this item. therefore, the proper workflow is to
call ::cloneComponents(e) on the entity you want to clone, with e being
the already-created entity to add the components into directly..

of course, each subclass of Component must implement a proper copy ctor,
the compiler provided one may fuck you over. case in point, pointers.
so yeah, make sure they do a deep copy in them.