py: Unify syntax error handling in compiler; check defualt arg syntax.

Checks for non-default args following default args, and errors out.
Addresses issue #328.