added primitive promise support for swig (wip, does not support multiple parents, and include)