Tooltip update

*Removed some unnecessary stuff from main related to the old tooltip
system
*Added more detailed descriptions to the description tags in library.xml
*Starting character is now placed under the player's deck (visual only
at the moment)
Playable Lesson Cards

--Main Changes--
Lessons cards are now playable from the hand onto the board, Player
class keeps track of the number of lessons in play and their type.

--Other Misc Changes--
Lowered frame rate down to 30 (from 60) to keep it more stable, may move
it back up if it's too choppy.
LessonTypes can now be converted from string representations ("Charms",
"Potions", etc.) into index representations (0, 1, 2, 3, 4) and vice
versa, this helps with loop iteration and type equality comparisons.
Cards now use the hand cursor when the mouse hovers over them.
Added icon file from previous project, will be implemented when we build
the project with SWFStudio for release version.
Tooltips + StatsPanel

--Main Changes--
Changed tooltips to use the proper card title in their descriptions, the
titles use a slightly larger font, which makes them stand out.
Began work on the stats panel for the player that shows several
information about the game. Current only number of lessons in play and
number of cards in the deck are tracked, when creatures are implemented
we'll keep track of the damage, and when actions are finally in we will
show the player how many moves he has left to do.

--Misc Changes --
Made the cards vector in CardStack protected again, added function
cardAt(index) which returns a card object at the given index.
TODO: Check bounds on the parameter.
Adjusted some positioning constants in the player class to make some
things look nicer.
Implemented fano.utils.DelayedFunctionCall for a nicer animation when
drawing the initial 7 card hand.
De-coupled the card titles from their descriptions in library.xml, this
was for the tooltip change that we made.
Optimization

Added some simple optimizations to certain code segments.
Better shuffle()

Made some optimizations to the shuffle function, no more splicing and
creating new objects, instead just a bunch of random swaps, works just
as good.
more optimizations

LessonButton has a static var for its sprite sheet now, can't believe I
missed that.
Got rid of some push() calls in MainMenu init().
Got rid of any calls to Vector.length in CardStack, it's now all handled
manually for performance.
Got rid of pop() in Deck.getTopCard(), cards in the CardStack are now no
longer delete, but instead we don't consider them in the valid range
(aka garbage memory to be overwritten later).
Optimized CardStack.remove operation

removed calls to Vector<Card>.splice()
Removed loop invariant in toString function
Optimizations + documentation

Reduced the amount of code in some constructors (particularly the
Card.as and Player.as constructors.
Added some documentation to the StatsPanel Class.
small changes
Added Lesson Graphics to StatsPanel

Images indicate which lessons the player currently has available.
TODO: Maybe a separate sprite sheet could be used instead of the scaled
down one.
Finished StatsPanel, New Lesson Graphics.

StatsPanel implementation is finished for now.
Created new graphics for the main menu lesson buttons and for the
statspanel available lessons bar.