"octal" strings containing invalid characters should evaluate to 0.

Have added tests to assert that"8", "9", "6789" & "abc1z" should each evaluate to 0. Also added tests that a leading 0 in the octal string is considered valid.

The octal class code has been changed to pass the additional tests.
Merge pull request #991 from dpneumo/Octal

"octal" strings containing invalid characters should evaluate to 0.