Non-label values can now start an expression. Also, some tests added.

I decided to add some basic tests to test_cliexec.py so I don't have to create
a bunch of files for small little tests. These tests check for a few different
things (like integer, number, and string to start with) can be a starting
expression.

The builtin keywords that previously caused a complaint about not being able
to start an expression can now start an expression. In the future, this would
allow things like '__line__.to_string()', if you wanted to do that, that is.

This is important for building a repl which I'll probably do in the future. At
the very least, this gets rid of something that's been bothering me for a long
time but hasn't been addressed.

Unfortunately, this meant adding a flag to expression again. A small price to
pay though.