duplicate allowance logic from ERC20 to Shadow (using s_allowances in Shadow contract)
to check the approval:
- if 1155.approveForAll, then return uint.max
- otherwise, return
s_allwances[owner][spender]
Note: make sure to utilize the max allowance logic (ethereum/EIPs#717)