Added persistency for the UserInputPanels.
- When hitting the previous button we attempt to save contents of the
  panel into the install data if the saveData() method has been
  implemented for the panel.
- There was inconsistency where some fields like text/radio would be
  saved on previous button, but not password fields.
- This can be useful when a user has to switch back and forth between
  panels and does not want to loose their data.
Added persistency to TargetPanel
Ensure file and directory fields are not expanded when saving without validation. Less confusion for persistency
Properly persist password fields, and no longer remake the userinputpanel everytime it is shown.
Adding new attribute 'updateTrigger' for dynamic variables
- updateTrigger="variable" where variable refers to a variable within idata.
- Indicates that variable should be re-evaluated only when the specified
  update trigger has changed.
Refactoring TreePacksConsolePanel.
- Fixed bug where parent pack could not be selected.
- Now display an interactive packs selection list.
- Remove internal class state, easier to comprehend and test.
Update to handle packs label the same as in GUI.
Internationalize all strings
Parse pack tags for onSelect and onDeselect tags.
Initial additions of onSelect and deSelect (Conditions not being used
yet).
Starting to strip out the core of PacksModel so that the console can
also use it.

Conflicts:
	izpack-panel/src/main/java/com/izforge/izpack/panels/treepacks/TreePacksConsolePanel.java
Initial refactoring of class variables for PacksModel
More PacksModel Refacotring.
- Use variables rather that 'magic numbers'
- Better integrate setValueAt method from GUI and base PacksModel method
Revert "Adding new attribute 'updateTrigger' for dynamic variables"

This reverts commit bc24ef5e895c493da8f0ab3008c410981cb9dc39.
Pack logic should now handle parent/child relationships, work still in progress
First iteration of TreePacksPanel refactorings.
- Remove several redundant methods that should be handled by PacksModel
- Do not instantiate a new PacksModel everytime you view the
  TreePacksPanel
- Some renaming of variables and methods
Second iteration of refactoring TreePacks and its PackModel.
- Removed redundant methods and method calls
- Narrow the focus of TreePacksPanel to provide the correct view rather
  than handling pack data.
Ensure that the TreePacksConsolePanel uses the PacksModel for keeping
track of pack data.
Third iteration of PacksModel Refactoring.
- Ensure partial checkbox information is obtained from packsModel
- Updates names of varaibles to be more clear and follow camelCase
  format
Ensure the onSelect and onDeselect attributes do not alter required
packages. Ensure the onSelect and onDeselect attributes do not alter
packages that do not have their dependencies resolved.
Further improvements to console TreePacksPanel.
- Show children of a parent underneath a pack
- Show dependencies of a pack underneath a pack
- Show if a pack is required underneath a pack