finished implementation of Entity and Components to make them actually useful