use #pragma once everywhere

Every single compiler I care about or would target supports this
cleanup, more attributes

Rely on __attribute__((cleanup)) in places
remove hardcoded LAST_AGENT