Fix incorrect conditional in `Pokemon` for IVs/EVs

Also fix hpType
Add <select> for Pokemon sets

It is hidden though. We'll use these later
Fix crash in `Calc.getTypeEff()`
`Pokemon`: Merge everything from `set`

If we forgot to validate anything else from `set` than we probably dont
care about validating. Merge it into the rest of the object.
More handlers and working calc display

- `Display.updateCalcs()` Recalcs all moves against the current pokemon
and displays the results

- `Display.p1active` and `Display.p2active` store the `Pokemon` object
we are working on. This should allow us to stop building a new one
everytime.

- Add `side` to `Pokemon` objects built through `Display.getPokemon()`

- `Display.showResult()` can take `Pokemon` objects instead of `jQuery`
objects for each side. `moveIndex` must now definitely be a number
between 0 and 3.

- Run `Display.updateCalcs()` on new species selection.
Add `Pokemon.prototype.updateDetails()`

Allows you to change values in the object without creating a whole new
one.

Also improved `Pokemon.prototype.update()`
Update `Data.Tiers`

Added names, short names, and Doubles
Add `Data.getSets()`
Move `loadDropdowns()` to `Display`

Also add handlers for '.set-select' elements
Show '.set-select', Add clearer messages for blank

fields
Add a LOT of things to `Display`

`Display.loadSets()`
`Display.makeSetDropdown()` Work with set selection

`Display.getSet()`, changes to `Display.getPokemon()`, most `Display`
functions can now accept 'p1' or 'p2' as arguments instead of a jQuery
object denoting the side.
Update README.md
Stop initializing a Pokemon with a random moveset
Finish '.set-select' implementation
Default '#type1' field to 'Bug'
No longer initialize a Pokemon to its first set
Add index.html