[WIP] SPARK-2360: CSV import to SchemaRDDs

Implements RFC 4180 for parsing comma separated value files into Schema RDDs, which includes:
* Optional header line
* Handling quoted fields
* Handling new lines inside quoted fields

Adds two new methods to SQLContext
* csvFile: Takes a path and returns a SchemaRDD
* csvRDD: Takes an RDD[String] and returns a SchemaRDD

__TODO:__
* Every field is assumed to be of type String. We can either infer types (using a sample of data) or let user specify types of columns.

Is the intention of supporting reading from an iterator to handle records having newline characters? Seems the issue that we cannot escape newline characters is a hadoop problem. Maybe a better approach is to have a new TextInputFormat with a new LineReader (in another PR)?