implement more functions. implement variables with scopes. small refactors.
get and set options