Separate atomization from tokenization
Include line number in atomization
Return error when tokenizing oversized atom

When "atomizing" an unsafe string, we need to make sure the atom length
is going to be less than the system limit (255). Any function calling
`unsafe_to_atom` checks for an error and returns it if present.
Merge pull request #1584 from vanstee/atom-system-limit-error

Return error when tokenizing oversized atom