Refactored encapsulated members
Cleaned comments and renamed local vars
Copy-edited comments
Fixed comments
added CsvResourceLoader.splitMultiField()
Moved data parse functions into ResourceLoader
Renamed encapsulated variables
Changed TileLoader.loadTile() to load()

All other loaders use load(); this commit makes TileLoader consistent.
Split functionality of EntityFactory

- Split the functionality of EntityFactory into two discrete steps: the
action loading, and the entity loading.
- Created ActionFactory to handle the creation of Action instances.
- Moved entity loading into its own class, EntityLoader.
- Moved action loading into its own class, ActionLoader.
- Made appropriate changes to Engine to account for the new API.