[IZPACK-1113]

This is to address http://jira.codehaus.org/browse/IZPACK-1113
See the Jira link above for some spec files to play with.

1. Fix bug where parent packs could not be selected.
2. Display interactive packs selection list for TreePacksConsolePanel as described the Jira issue.
  - Note that the whitespace was not preserved, test out this PR to see what it actually looks like
3. Ensure to handle pack labels the same way as the rest of the installer by checking internationalized strings first.
4. Refactored TreePacksPanel, TreePacksConsoleHelper, PacksModel
  - Ensure that TreePacksPanel and TreePacksConsoleHelper are responsible only for view and user interaction
  - Data on packs are stored and handled by PacksModel
  - Use variables names instead of "magic numbers"
  - Use camelCase conventions to be consistent
  - Allows to synchronize pack functionality between console and GUI
  - Allows easier editing for Pack functionality, less data being mirrored from PacksModel and TreePacks
  - *Could definitely use more eyes to ensure no regressions, I am not too sure how good the tests are*
5. Added onSelect and onDeselect attributes to packs.
  - Allow packs to be selects/deselected when a pack is selected
  - Allow packs to be selects/deselected when a pack is deselected

Below means select pack b when this pack is selected.
Below mean deselect pack c when this pack is deselected (notice the "!")
Cannot select/deselect required packs or packs that do not have their dependencies resolved.
I've attached some spec files in the Jira to play around with the functionality.
Also to help test that refactoring did not break anything.
```
<onSelect name="b.pack"/>
<onDeselect name="!c.pack"/>
```
Also I think the TreePacksPanel does everything the Packs panel does plus more.
So maybe PacksPanel can be deprecated (have to look into it more).