690 rspec3

Task 690

## Changes
* Make specs pass with Rspec3
* Fix tiny bug: do not raise exception if a target is an empty association (#present? => false)

## RSpec
```
Finished in 0.27947 seconds (files took 0.25942 seconds to load)
160 examples, 0 failures
```

## Doc
```
Files:          26
Modules:        17 (    0 undocumented)
Classes:        14 (    0 undocumented)
Constants:       3 (    0 undocumented)
Methods:       122 (    2 undocumented)
 98.72% documented
```
Not changed.