Architecture overhaul with substantially improved crash reporting

Previously crash reports had java stack traces that did not pertain
to crashes that occurred in C#.  This fixes that issue. It also
simplifies the code.

Created a new demo app from scratch.