added loading/saving configuration and changed argument structure completely
merged branch