Implements 'begin' and 'end' keywords

Treats "begin" like '{' and "end" like '}'.  A useless semicolon appears
when using "begin begin" vs "{ {", but it seems to be harmless.