Use optional AS keyword in alias clauses

Modified engine to use AS keyword. Also fixed affected unit tests
which cover aliases for fields, tables, and subselects.

This change is primarily motivated by my use of Microsoft Access, which seems to choke without the keyword.  However, I believe the AS keyword is syntactically legitimate SQL and should work with all the major SQL dialects.  The intent is not so much to add vendor-specific support, but to choose generic syntax that supports the broadest spectrum of vendors.