Created struct buffer to encapsulate buffer related fields together.

Added struct buffer to base package.

Changed sitedef_lexer_scan_next_buffer() and template_lexer_scan_next_buffer()
functions to take a struct buffer pointer instead of the equivalent arguments.

Also changed signature of downstream lexer functions to pass a buffer struct.