option parsing (WIP)
use option parsing