Write a Solidity smart contract that implements a simple token transfer with basic security checks.
Implement the transfer logic represented by the reference function below. Reject nonpositive amounts, the zero address, unknown senders, and transfers exceeding the sender's balance. Failed transfers must leave balances unchanged.
Input: balances, sender, recipient, and integer amount. Output: an object containing success and the resulting balances.
def transfer_token(balances, sender, recipient, amount):