replaced castra's mkremote with custom version that accepts success & fail handlers