Add timeout wrapper for any callback interface