added some option parsing. need to add explicit stuff