R17: Optimize shape recording and playing.

Add recordShapes(..exts).
Fix GiCoreView::isStopping().
Add resetDoc(doc). Remove parameter from MgPlaying.submitShapes.
Add MgPlaying.
Add redraw(bool changed).
Add javaconst(1) for GiContext.
R17: Add loadFirstFrame(filename). Fix MgCmdManagerFactory for static _factories.
Add MgStringCallback to avoid char* pointer’s leak.
Restore changeCount too.
Add MgShapes::traverseByType().
Add traverseImageShapes() and MgFindImageCallback.
SystemClock.elapsedRealtime().
Add createDynamicShapes().
Add findShapeByImageID(doc).
Add getRedoIndex() and restoreRecord().