better bindings. added dependency checking