MATLink`mEngine` context for low level functions
Added type wrappers for engGet[]'s return values.  Implemented getting one-element structs.
Temporary workaround for any type of empty array:  just return {}
Support getting cells
Support for multi-element structs.
Return error on sparse matrices instead of crashing.
Some more error checking.
Merge branch 'develop' of github.com:rsmenon/MATLink into mma-dev
Partial support for getting sparse arrays
make a custom heads rules list instead of definitions so as to better control evaluation order; consolidate all rules in a single function. Structs, cells and sparse arrays need to be added in
Combined sparse array additions from cdev; moved `mEngine` context to the end, so that several unnecessary "MATLink`mEngine`foo" calls can be simplified.
- Add flags for logical ($ReturnLocalsAs0and1) and cell output ($OutputIsCell)
- Define engineOpenQ only if there is a connection to the engine
- Consolidate mat* head definitions to a single command so that the heads remain inert
Added definitions for matLogicalArray