Finished Lexer Structure (next() method) + Unit Tests

Lexer now contains the next() method which returns the next available
token. Unit tests added to confirm that this method works correctly.