Cleanups and skipper

 - using template alias now instead of RULE() macro
 - using qi::blank instead of custom whitespace skipper
 - aliased boost::spirit::qi as stream::qi

Unneeded includes, = delete and possibly some other minor things
Prefer std::string, centralize skipper knowledge in the header
Using qi::alpha/alnum; BOOST_SPIRIT_DEBUG_NODES
simple distinct `kw()` parser

Note how we write

   kw(+"keyword")

instead of

   kw("keyword")

because "keyword" is (const char&)[8] and qi/phoenix has problems
initializing from an array reference.
Adapted style for easier merging
Merge branch 'sehe'

Conflicts:
	grammar.cpp