Allow parsing of @description directive

Provide optional parser for a description directive that may occur
before a property statement, e.g.

@description "This foos"
foo : int = 1

Omit parser attribute as property type does not yet implement this.
Add new testing text file with descriptions to test parser.
Remove skipper from id parser

Identifiers cannot have whitespace, so remove skipping from
their parser.
Add string/vector of string to valid property types

Add string and vector of string to valid types held by a property.
Implement new parser for these, reusing existing parser for quoted
strings. Update basic test file with a string property.
Add boolean property type parser
Parse and consume integers fully or fail

Though symbol table of types provides correct parser for input type,
Qi's integer parser will only consume the integer part of any real
number input by mistake. For example

foo : int = 3.14

will consume the '3' but leave the '.14' dangling. Though that should
still result in subsequent parse error, implement a strict int parser
so that error is localized to the relevant text.