Builtin assertions accept optional 'msg' argument

Refs #33