updates to handle larger projects,  better MATLAB compatibility, initial containers etc

- change dispatching mechanism in the mexFunction from long "if else" list to use std::map
- change names of operators in matlabopers.swg from Octave to Matlab (still a few todo)
- initial attempt to get containers to work. For instance, replaced various "octave_value"
with "mxArray *", "Octave" with "Matlab" etc. Indexing and iterators  don't work yet.
- use Getattr(b, "sym:name") as opposed do "name" in a few places, e.g. when writing
class hierarchy in the matlab file (otherwise we get the C++ name, not the matlab name)
- not use "SWIG" as warning-id for matlab, as matlab doesn't like that. I've replaced these with "SWIG:RuntimeError".
- use _snprintf for MSC_VER (I know that William prefers not to use this function nor indeed snprintf...)
- define SWIG_CPLUSPLUS_CAST (any modern compiler will fail on the wrapped code otherwise)