[SPARK-4618][SQL] Make foreign DDL commands options case-insensitive

Using lowercase for ```options``` key to make it case-insensitive, then we should use lower case to get value from parameters.
So flowing cmd work
```
      create temporary table normal_parquet
      USING org.apache.spark.sql.parquet
      OPTIONS (
        PATH '/xxx/data'
      )
``` 
Hmm, how about revert to ```Map``` here and make case insensitive configurable, so we can write like this:
```
private[sql] class DefaultSource extends RelationProvider {
  /** Returns a new base relation with the given parameters. */
  override def createRelation(
      sqlContext: SQLContext,
      parameters: Map[String, String]): BaseRelation = {
    val caseSensitive = sqlContext.getConf("spark.sql.caseSensitive", "false").toBoolean
    val paras =
    if (caseSensitive) {
      parameters
    } else {
      new CaseInsensitiveMap(parameters)
    }
    val fileName = paras.getOrElse("path", sys.error("Option 'path' not specified"))
    val samplingRatio = paras.get("samplingRatio").map(_.toDouble).getOrElse(1.0)

    JSONRelation(fileName, samplingRatio)(sqlContext)
  }
}
```