Added Opt support.
Replaced GetComponent, to a faster one.
ComponentDependent is gone forever.
Made the necesery refactorings.