Fix dimension-related bugs in chebfun.mtimes().

It seems that we made a couple of errors in how dimensions are checked
throughout chebfun.mtimes().  Ticket #1215 (which this commit resolves)
points out one of them, but while fixing it, we found more.  This commit
addresses these issues by rewriting mtimes() to ensure that (1) we don't
inappropriately swap the order of the inputs (the problem in #1215) and
(2) that the dimension checks are handled correctly.  Several tests have
been added to guard against similar mistakes in the future.

While we were at it, we noticed that chebfun2.outerProduct() was failing
for quasimatrix (array-of-chebfuns) inputs.  We fix this by replacing
two accesses to the .domain property of a chebfun with calls to the
domain() function.  In reality, this is not very useful, since if you
build a chebfun2 this way, any operations with it (including display())
will result in crashes, but it at least removes a potential source of
asymmetry between array-valued chebfuns and quasimatrices in
chebfun.mtimes().  Perhaps it would be better to try to coerce
quasimatrices into array-valued chebfuns whenever an outer product needs
to be computed and fail if the conversion is not successful.
Nevertheless, this is a side issue and should be handled separately.

Finally, these changes flushed out a handful of places where matrices
were being multiplied in a dimension-mismatched manner but the result
was still OK due to the error made in #1215.  These occurred in the
following files:

 - @chebfun2/lu.m
 - @chebfun2/volt.m
 - tests/misc/quantumstates.m

This commit fixes these issues as well.
Allowing p.discretization = 'periodic' to specify @trigcolloc disc.

Also added some documentation describing the various discretization
options.
Merge branch 'fix-chebguiExporter-output' of ssh://github.com/chebfun/chebfun into feature-chebgui-periodic
Adding an periodic EIG demo.
Various changes to make 'periodic' discretization work in Chebgui.
Merge branch 'development' of ssh://github.com/chebfun/chebfun into feature-chebgui-periodic
We now get the titles of plotcoeffs plots automatically!
Ensure we select the correct discretization when exporting to m-files.
making sure that chebfun(f) has the same domain as f, if f is a chebfun.
making sure tests pass.
Merge pull request #1279 from chebfun/fix-chebfun-mtimes

Fix dimension-related bugs in chebfun.mtimes().
Merge remote-tracking branch 'origin/development' into fix-chebfun-domain
Modify commit + coding style.
Merge branch 'development' of ssh://github.com/chebfun/chebfun into feature-chebgui-periodic
IVP->ivp
Merge branch 'feature-chebgui-periodic' of https://github.com/chebfun/chebfun into feature-chebgui-periodic
adding a test for constructor.
Merge branch 'fix-chebfun-domain' of https://github.com/chebfun/chebfun into fix-chebfun-domain
Tolerance...
Merge pull request #1306 from chebfun/feature-chebgui-periodic

Making periodic problems work in Chebgui