Teradata support

As per overview in #304 to resolve #168 and #7.
Ok, I can revert and just apply the fixes.