better log interface, switched to GetOpt