Restructure map.jinja into smaller parts

The dictionary in map.jinja was starting to become a bit unwieldy which is why
this patch restructures it into distinct maps for the various parts.
Merge pull request #13 from babilen/dev/restructure-lookup-map

Restructure map.jinja into smaller parts
Use short state declaration form
Unify requirement declarations

Requirements can be declared by referring to either a state id or the value of
its respective "name" attribute. This commit unifies usage in such a way that
only references to its "name" are made (as defined in map.jinja)