Barkley late show wins it for Bath