Added overloads to take a Program object to resolve and rebind