Renamed core.py to builder.py
Moved nonlinearities to nonlinearities.py
Removed is_base and is_view (never used)
Moved operators to builder.py.
Several changes to networks.

- Networks are no longer treated like Nengo objects
  - Addresses #165
- PEP8 and simplifications for basal ganglia
Removed build things from Model

- Time and timesteps are now nodes
  - But a little bit special, a ProdUpdate happens at build time
- Fixes #157
Moved connections to objects.py

- Circular dependency issues. They go together naturally anyhow.
Removed outdated templates
Moved all build methods to builder.py

- Create Builder class (with some decorators to keep things clean)
- Build is now completely isolated from creation and simulation
- A builder can be also be a context manager;
  see tests/test_simulator.py for an example
- Interesting side effect: there is a timestep 0 now,
  which matches the Java version
Incorporated feedback on Builder

- Now only one extra thing, the `builds` decorator.
  The class decorator is instead done in __init__.
- Builder is now an optional argument to simulators
Merge branch 'master' of https://github.com/ctn-waterloo/nengo into spa

Conflicts:
	nengo/networks/base.py
	nengo/objects.py
Fixed merge errors I missed