PassThroughCode refactoring and create PassThrough Core and API for enhace reusability

Is this the correct place to synchronize ?