The n2o_async module is a simplified way to create local protocols for Erlang/OTP gen_server. Each protocol then can be spawned under Erlang/OTP supervision. Such spawned protocol handlers can be selected by n2o. cache, which is ETS.
The proc/2 is a callback that will be called on each gen_server's calls: handle_call, handle_cast and handle_info, its init and terminate.
Spawns proc/2 function inside gen_server under supervision.
Put Pid in n2o cache and also remember the caller Pid for n2o messages.
Send FLUSH message with current actions in process dictionary, then cleanup all actions.
Sends gen_call message to process by Class,Name} key, which was stored in cache during initialization.