GP sweep variables support, other small changes

  - Updated examples to show new syntax
  - Solvers now return dictionaries
  - Update simple_example to use the built-in profiler