Component use mixin constructor
Entity optimisations + comments