Add requirement: nose==1.3
Ignore env/ directory
Makefile to simplify running tests, etc
Add test module
Ignore __pycache__
Add test modules for lexer and parser
Add ical package
Add CONTROL code lexing to the lexer
Add tests for control codes
Add a test for CRLF

Added a check_token helper function to make that bit easier. Had to define token
functions for CONTROL and CRLF to keep the ordering right. (CRLF needs to be
evaluated before CONTROL.)
Add NAME token function

Remove tokens without tests. (Will readd them later.) All tokens should be
functions, not simple strings. Token functions use the lex.TOKEN decorator now,
just for consistency.
Add failing NAME token test
Move lexer.token() call into check_token; rename check_token to expect_token