Refactor models and node_api

Weren't we trying to do the exact opposite of this?