moving all captable logic to a service that creates a captable object