A bit late, but there's a few choices for custom handles, though I'm not sure how to create custom manipulators that would work the same as the built in ones (meaning they would show up in the handles section for the HDAs).
The MSS_CustomBrushState sample shows how to create a paint node.
The ways Houdini implements handles, is with 'states'(BM/BM_State is a good place to look to learn a bit more). States are event handlers, tied to specific nodes, all nodes have them but most only have a generic implementation. If you register a state(MSS_SingleOpState is the best choice for a SOP, though BM_SingleOpState will work for OBJs and SOPs but is a bit more effort to work with) , and specify the name of the node, the state automatically associates with it (just select the node and hit enter in the viewport), you can create states for custom HDA's and even override states for built in nodes.
States can also handle rendering, so by creating a state, rendering a custom handle and defining the interactions and plugging the resulting values into parms you can create a completely customized handle for any type of node. This is basically how Houdini handles are implemented but I think there are a few missing pieces preventing the creation of a proper handle though.
You could also create a DM_MouseHook and DM_SceneHook to create and render anything you wanted without it being tied to any particular node type.