1007 create schema if not exists

Implement `create_schema_if_not_exists` method

## Changes
* Use the latest RSpec, address deprecation warnings.
* Implement  `create_schema_if_not_exists` and `drop_if_exists` methods

## RSpec
```
Finished in 1.14 seconds (files took 1.05 seconds to load)
156 examples, 0 failures, 3 pending
```

## Doc
```
Files:          43
Modules:        40 (    0 undocumented)
Classes:         7 (    0 undocumented)
Constants:       8 (    0 undocumented)
Methods:       150 (    0 undocumented)
 100.00% documented
```