add expire_callback init option - closes #52