improve exception message for ComponentSet.index
start to implement an Expression class
finished initial Expression support
use inline-defined macros to access numpy arrays in rhs
fix test_model_pickle test failure by using _export=False
change ComponentSet repr to use components' repr instead of str

(fixes issue where components that now subclass sympy.Symbol were repr'ing
as just their name, which is Symbol's repr implementation)
fix some doctests that broke as a result of the Expression changes
renamed bng wiki sample models and switched egfr example to a more complex one
use more explicit sympy constructors rather than relying on sympify

(this fixed an issued where a parameter name like 'deg' would be interpreted
as a special function or the like, rather than a symbol)
make bng generator handle models with expressions but no parameters

(odd, but possible)
support expressions that reference observables
Substitute passed-in param values for expr evaluation
Added getnewargs methods to Parameter, Observable, & Expression

This fixes pickling errors in which new was getting called with
_export=True (the default value) which ultimately resulted in an error
from the SelfExporter because due to its being called with no default
model.

This should fix the problem of unpickling models which have been built
programmatically with all component with _export=False; it may still
lead to errors when unpickling models built using the SelfExporter.
fixed and improved test_model_pickle
fix pickle/copy issues with some component types

Always set _export=False in the pickle protocol methods __getstate__ and
__getnewargs__, which will keep SelfExport.export from being called on
the objects upon reinstantiation. Also, it actually seems wrong to re-export
such reinstantiated objects unconditionally anyway -- leave it to higher-level
code to make that decision.
enable suppression of ModelExistsWarning from doctests
Added Monomer, MonomerPattern, Compartment, and Parameter equality operator and test
is_equivalent_to now includes compartment
Fixed interactive export_name to be compatible with file system naming, now interactive mode can generated equations
Fixed as_complex_pattern bug on dealing with compartments