improved spec sema
added support for common block SAVE
added sema for COMMON
added codegen for COMMON