optional parameters now actually optional

todo:
-chart_type 2 optionals aren't optional
-text/key on charts
-re-create sql, proper indexes
-implement career charts
-implement efficiency charts
-fix save to png
-optimize menu updating