[AOP]Use more generic approach for observers.
Clean aspect implementation
[AOP]Cleanup code