Add learnset data and functions

`Data.Learnsets` and `Data.getLearnset()`
Update /data/
Changes and Fixes to `Pokemon` constructor

- use `this.id` over name where necessary
- use `parseInt()` where necessary
- generate a random moveset by default if passed none
- move random gender to its own function
- ensure `this.moveset` is a 4 element array
Update PokemonSets.js

Fixed `Data.Tiers` and changed format for `Data.Sets`
More event handlers and display fixes/changes

- No longer use "--" to indicate nothing chosen. Use "" instead.
- Add learnsets.js script file to page
- replace "xSelect" <select> element classes with "x-select". Match
other element type class names.
- "moves-table" and "stats-table" are now classes