Update the listener to match the code.
Lots of patches to make it more robust.
A little better logic in the data_ext parser.
Add a bunch of data points for future tests.