Fix #33

* Parse: Add conid to simple patterns
* AST: Add ConidPattern Node
* Parse Test: Enable relevant test
Merge remote-tracking branch 'dionyziz/master' into fix_33
Parse, AST: Allow Pattern without arguments; deprecate ConidPattern.
Solve reduce/reduce conflict in patterns.

* Parse: Replace simple_pattern_list with simple_pattern_seq.
* Parse test: Fix and expand testing of simple_pattern_seq.
Parse: Split pattern rule for clarity.
AST: Drop deprecated ConidPattern node.
Merge pull request #2 from Renelvon/fix_33

Solve reduce/reduce conflict in patterns.
Symbol: Rewrite insert_symbol.

* Do not return anything.
* Create an Entry before inserting it.
Symbol: Groom code.
Symbol: Refactor error reporting.

* Make logger public.
* Delegate string formatting to error module.
* Rewrite error messages.
Symbol: Simplify managing scope visibility.
AST: Upgrade FunctionDef to ListNode.
AST: Proliferate NameNode.

* Attach a NameNode superclass to every node worth inserting to some
  kind of symbol table.
Symbol: Embed a NameNode inside every Entry object.

* Derive identifier from the referenced AST node.
* Drop explicit lineno/lexpos attributes.
* Adapt lib namespace initialization.
Symbol: Make Entry and Scope private subclasses of SymbolTable.
Symbol test: Initial API test.
Symbol: Rewrite identifier handling.

* Entry's identifier is now implicit; use node.name
Symbol: Insert/Lookup AST nodes instead of identifiers.
Symbol: Use node-aware interface to add line info to error messages.
Symbol test: [TDD] Add exception for symbol error.