Being an external agent, it's confusing that it uses haproxy's internal types and it seems to have encouraged other implementations to do so. Let's completely remove any reference to struct sample and use the native DATA types instead of converting to and from haproxy's sample types.