Returns a tuple (Pubkey, Account) for a BPF program, where the key is the
provided program ID and the account is a valid BPF Loader program account
containing the ELF.
Returns two tuples (Pubkey, Account) for a BPF upgradeable program.
The first tuple is the program account. It contains the provided program ID
and an account with a pointer to its program data account.
The second tuple is the program data account. It contains the program data
address and an account with the program data - a valid BPF Loader Upgradeable
program data account containing the ELF.