Pass extra props to the player through the root comp

Add a child entity for Map component and use it to map to another
entity in Map component. Use `componentWillMount` to merge that
child entity's props to the player's props. This way we could pass
initial stats for the player to the Map to manipulate.
Keep track of free tiles

Added some debugging features.
Basic attack system

Different enemy types with HP and damage.
Attack can kill enemies.
If player dies, go back to menu scene.
A nice benefit is that a new game has a new random map.