TAJO-1092: Improve the function system to allow other function implementation types.

Closes #178
TAJO-233: Support PostgreSQL CatalogStore. (Jihun Kang via hyunsik)
TAJO-235: Support Oracle CatalogStore. (Jihun Kang via hyunsik)

Closes #154