[kernel] Use helper functions to minimize assumptions about dill layout.
[kernel] Use helper functions to minimize assumptions about dill layout.

Attempt to use the helper functions to minimize the number of places
that would need updating should the binary file (the dill file) layout
change.

The changed code (in FieldHelper) makes assumptions about the layout of
the FunctionNode. Instead use FunctionNodeHelper to get the wanted data.

Also replaced an unconditional read-and-go-back with the usage of
AlternativeReadingScope.

BUG=
R=sivachandra@google.com

Review-Url: https://codereview.chromium.org/2991233002 .

dartino/dart-sdk,dartino/dart-sdk,dartino/dart-sdk,dart-archive/dart-sdk,dart-archive/dart-sdk,dart-lang/sdk,dart-archive/dart-sdk,dart-archive/dart-sdk,dart-lang/sdk,dartino/dart-sdk,dartino/dart-sdk,dart-archive/dart-sdk,dart-lang/sdk,dartino/dart-sdk,dartino/dart-sdk,dart-archive/dart-sdk,dart-archive/dart-sdk,dart-archive/dart-sdk,dart-lang/sdk,dart-archive/dart-sdk,dartino/dart-sdk,dart-lang/sdk,dart-lang/sdk,dartino/dart-sdk,dart-lang/sdk,dart-lang/sdk