Mostly changed function names to match those used in Julia

E.g. to read and write data in csv format, one uses functions named readcsv and writecsv taking a stream of filename as first argument. The plist function have been changed to match this.
Separate out reusable parts of lexer and parser

Go functions signatures, just have comma, identifiers, parentcies, braces and semi colon potentially. All handled by lexer.
Modularized code further
want separate tests for parser and plist funcs
Refactored Plist into two modules

Motivation: Want to be able to reuse Lexer and Parser for other purposes.
Fixed bug and improved README

Discovered that parser did not take newlines into account. Found this when expanding tests with the functions that read from file.