[FLINK-12] Clean up configuration object

  - Remove class loader (was inconsistently used and set)
  - Objects are stored in their type, rather than as a string
  - casting happens on object (for numbers) with fallback to parsing of the string representation
  - global configuration reuses config object, rather than re-implementing config logic.