Implement time interval

Add Observable#time_interval for blow example:

```ruby
require 'rx'

source = RX::Observable
    .interval(0.5) # ms
    .time_interval()
    .take(3)

subscription = source.subscribe(
    lambda {|x|
        puts 'Next: ' + x.to_s
    },
    lambda {|err|
        puts 'Error: ' + err
    },
    lambda {
        puts 'Completed'
    })

sleep 3
# => Next: (0)@(0.5120988)
# => Next: (1)@(0.5000763)
# => Next: (2)@(0.515575)
# => Completed
```