Reorganised package structure and started breaking down the InfoPanel into smaller classes.  Custom document listeners have been created for each field that needs one, although I will look into a way to avoid the code duplication that still exists.  Although a lot of the code within the Listeners is duplicated, it does make the InfoPanel a lot more readable.