Added builder class (from tbidbaxlipo)
Added debug message to bng.py output
Option to specify output file basename in bng/run_ssa
Left a colon off the if block
Merge remote-tracking branch 'pysb/master'
keep changes to do_export from leaking

The reset of do_export needs to go *after* the model load, not before.
otherwise if the last model to be loaded changes it to False then that
state will leak out into subsequent tests.
keep noisy distutils output from breaking doctests
as_complex_pattern converts Monomers

This prevents all constructors that depend on as_reaction_pattern
or as_complex_pattern to take MonomerPattern from throwing an error
when given a Monomer instead.

In particular, this resolves issue number #88, in which the Observable
constructor would error when a Monomer was used instead of a
MonomerPattern.
Wrapped integrate.py to 80 chars
Solver's call to lambdify specifies "numpy"

Previously, lambdify would use the built-in math module's
implementations of sympy functions (such as exponentiation)
which would fail when passed numpy arrays (such as the trajectories
resulting from observables. Specifying "numpy" in the call to lambdify
indicates that the numpy implementation of sympy functions are preferred.
Reverting master branch to revision
b1faec28e488757ef7496319512ee3db00695a25 from Oct. 30, 2013.
Deleting cupSODA.py from master branch
Deleting tyson_oscillator.py from master branch
Merge remote-tracking branch 'lolab/master'

Conflicts:
	pysb/core.py
	pysb/tests/test_core.py
Removed __eq__ methods for components, and tests

Following our discussion about the issues related to the use of the
__eq__ operator for comparison of components, the methods have been
removed. For the time being, Implementation of component comparison will
be made on a model/project basis until a better understanding of
model merging use cases becomes clear.

Tests in test_core.py that had been added in the merge have also been
removed.

Note however, that one test in test_core.py that was added in the merge,
test_compartment_initial_error has been retained; this test insures that
MonomerPatterns specified for an initial condition that are the same in
every aspect (sites, states) except for their compartment, are not
considered to be identical. Similarly, the line added to the
is_equivalent_to method of ComplexPattern that checks for the identity
of the Compartment associated with the ComplexPattern has also been
retained. Both of these additions were introduced in commit
75c1e42acc3afe828fd5539c5f5225392f0395c4.
Pattern + None returns Reaction Pattern, + tests

d-fan introduced changes to allow MonomerPatterns, ComplexPatterns, and
ReactionPatterns to be added to None. However, the implementation returned the
initial Monomer/ComplexPattern rather than a ReactionPattern. Here I convert
MonomerPattern and ComplexPatterns added in this way to ReactionPatterns using
as_reaction_pattern, and add the appropriate tests. Note that ReactionPattern +
None can return self, rather than as_reaction_pattern(self), because, well,
it's already a ReactionPattern.
Reverted doctest ellipsis for Solver

See @jmuhlich's comment on the lolab pull request at
https://github.com/pysb/pysb/pull/87. He fixed the root cause in commit
08aeae9b17b so this change can be reverted.
Refactored pore_species and chain_species into polymer_species

This simplifies the implementations of both polymer species functions
into a single function, where the closed/open status of the polymer
(i.e., pore or chain) can be specified using an argument to the
function, closed=True/False.

Because this involved changing the bond numbering scheme for pore
species, this required updating the doctests for the pore
assembly/transport etc. macros as well. Currently all doctests in the
file pass.
Refactored assemble_pore/chain into assemble_polymer

The code was almost completely identical between these two functions
other than the call to chain_species vs. pore_species. The refactored
function calls polymer_species and specifies closed=True/False.

Note that I also moved some code around to maintain a logical ordering.
updates to travis config

* run all tests with "setup.py test" rather than nosetests
* update status image in readme to pysb/pysb one