Some file structure reorganization has been applied.
New abstractions and its concrete implementations has been created (IEngine -> DynamicProxyEngine)