Yep. Self-generated identifiers and self-signed events are the core. Everything else (including relays) is a matter of engineering.