Temporary changes for porting mariadb
MariaDB port temporary code (extraction part)
Continue extractor porting; testing with spouse example

	../data/sentences_dump_mysql.tsv
	../schema_mysql.sql
Merge branch 'master' into zifei-mariadb

Conflicts:
	.travis.yml
	src/main/scala/org/deepdive/extraction/ExtractorRunner.scala
	src/main/scala/org/deepdive/inference/InferenceManager.scala
	test.sh
	util/sampler-dw-mac
Finished porting for extractor part; updated example
Partial porting of inference. Got errors in data unloader.

- preparing to merge with master for newest changes
Finished first version of porting

- not optimized for multi-node mariadb
- Sequential assign ID, no parallel load/unload
Small fixes to pass the test (with psql)
Merge branch 'develop' into zifei-mariadb

- Integrated into DataLoader
- Fixed functionality to work in mysql
- not passing all tests for psql
- not finished tests for mysql

Conflicts:
	.travis.yml
	src/main/scala/org/deepdive/datastore/DataUnloader.scala
	src/main/scala/org/deepdive/extraction/ExtractorRunner.scala
	src/main/scala/org/deepdive/inference/InferenceManager.scala
	src/main/scala/org/deepdive/inference/datastore/SQLInferenceDataStore.scala
	src/test/resources/application.conf
	src/test/scala/unit/datastore/DataUnloaderSpec.scala
Fixed all existing tests for mysql port
Refactor code to modularize inference datastore

- extractor runner is not refactored yet
- do not test mysql yet
Updated travis.yml
Update application.conf

change default configurations back to use "PG" conventions even for mysql
Refactored code for more reuse.
Pending test to wait for hotfix branch; fixed gitignore

Mark some methods as unimplemented in mysql datastores. (only
		json_extractor might use these)
Merge branch 'develop' into zifei-mariadb, and fixes

Resolved conflicts and fixed tests
- fixed concatination problem in mysql
- text cast to char in mysql
- other modularity improvements

Conflicts:
	src/main/scala/org/deepdive/inference/datastore/PostgresInferenceDataStore.scala
	src/main/scala/org/deepdive/inference/datastore/SQLInferenceDataStore.scala
	src/test/resources/application.conf
	src/test/scala/unit/inference/SQLInferenceDataStoreSpec.scala
	test.sh
Fixed Helper tests
Refactored sql/bash execution functions and removed warnings

Refactored functions:

- Moved JDBC-related execute* functions into JdbcDataStore, so that all
ds can call it.
- Moved the function to execute SQL query via bash file into Helpers
- Bash command execution everywhere should call Helpers.executeCmd.

Removed warnings: Fixed warnings by importing scala.language.postfixOps
and scala.language.implicitConversions in corresponding places. DeepDive
can run without warnings now.
Fixed bugs with Mysql

- loader should execute multiple queries
- concat should return empty string when input is empty list
- should not add '.text' into loader file path
Added -N option in mysql execution

-N skips the column header and help exports clean tsv data with --silent.