Simplify checkNPCInteraction and improve MenuManager's closeAll()

A lot of the code in GameStatePlay::checkNPCInteraction() was from when
I added a Trader button to MenuTalker. That button has since been
replaced with the more flexible MenuNPCActions, so the code is not
needed anymore.

As for MenuManager, I changed closeAll() (including closeLeft() and
closeRight()) to work even when we're dragging something. Now, the
behavior is to return whatever we were dragging and *then* close the
menu(s). This should prevent dragging things when they shouldn't be
dragged.
Remove usage of menus/menus.txt

Position/alignment is now in the config files for each individual menu.
Add toPoint() and toRect() to file parsing utility functions
Use utility functions to simplify parsing menu config files
Allow position configuration for MenuNPCActions

Fixes #996
Rename some instances of update() in menus to alignElements()

update() implies that the function can be called multiple times (usually
every frame). In contrast, alignElements() is typically called just once
after a call to align().
Remove menus/menus.txt from default mod
Merge pull request #998 from dorkster/menus

Simplify checkNPCInteraction and improve MenuManager's closeAll()
Merge branch 'master' of https://github.com/clintbellanger/flare-engine
Merge pull request #999 from dorkster/menu_refactor

Remove the usage of menus/menus.txt
Merge branch 'master' of https://github.com/clintbellanger/flare-engine