Prototype System class.

@moorepants, can add your tests to this branch? From this point I'll write code in a test-driven way. It'd be fun to continue to work on this together, but I'm also happy to do the coding and you can review afterwards (if you're busy, etc.).

- [ ] Edit Scene so that it takes in a System.
- [ ] Make KanesMethod and LagrangesMethod derive from a single abstract base class (ABC), perhaps MechanicsMethod. This ABC will be required to provide certain attributes.
- [ ] Document in Sphinx, README, etc.
better, if we initialize Scene with a System instance, rather than passing it to a method.

Ideally it should be on the lines:

    s = Scene(sys, ...)
    s.generate_visualization_json(over_time_data = time_data)