Bug 1035170 - Rewrite SWF parsing to a scan-first, parse tags on demand approach

Was never a big fan of string switch cases, but I guess we can't do much until we fix the lower level parser.