build things by first laying blueprints of them
initialize is now like a constructor; added onbirth/ondeath events