Oracle: support for binding variables

This is an update of #89.

```php
$ora = dibi::getConnection('ora');

// functions
$data= $ora->query("select chadima.argtest(%sql, %sql) as r from dual", $ora->getDriver()->bindData('asdfasd3f', SQLT_CHR), $ora->getDriver()->bindData(210, OCI_B_INT))->fetch();

// procedures
$out = $ora->getDriver()->bindOutData(0, OCI_B_INT);
$result = $ora->query("call chadima.argtest_proc(%sql, %sql, %sql)", $ora->getDriver()->bindData('asd1fasdaf', SQLT_CHR), $ora->getDriver()->bindData(212, OCI_B_INT), $out);
var_dump( $ora->getDriver()->getBoundData($out) );
$ora->getDriver()->free(); // this is required for another query when using out parameter

// insert
$key1 = $ora->getDriver()->bindData($rawData, OCI_B_BLOB);
$ora->insert('BINTEST', array(
        'BLOB1%blob' => $key1,
		'IDX' => 3,
     ))
     ->returning('%n INTO %sql', 'BLOB1', $key1)
     ->execute();

// update
$key2 = $ora->getDriver()->bindData($rawText, OCI_B_CLOB);
$ora->update('BINTEST', array(
        'CLOB1%clob' => $key2
     ))
     ->where('IDX = %i', 3)
     ->returning('%n INTO %sql', 'CLOB1', $key2)
     ->execute();

// select
$data = $ora->select('CLOB1')->from('BINTEST')
     ->where('IDX = %i', 3)
     ->fetchSingle();
```