Simplify graphics2 code

* Use member attributes to store description, min, max, etc, to make
  code cleaner for inheriting classes. However, description(), min(),
  etc are still used to access values.