Coroutine and chains interaction

 - now chain module can work with coroutines and coroutine-chaining
 - example added to simplify understanding of this features
 - internal examples for development purposes moved to examples/internal

Example:
Given:
 * Tornado event loop running
 * `ServiceMock` class that will return specified tuple one by one asynchronously via future (with timedelta=0.1s) after its `execute` method invoked.
 * `SomeErrorService` class that will raise `SomeErrorServiceError('Bad!')` exception asynchronously via future after its `execute` method invoked.

 Then following code:

def step1():
    r10 = yield ServiceMock(yields=(0, 10)).execute()
    r11 = yield
    r20 = yield ServiceMock(yields=(2, )).execute()
    r30 = yield ServiceMock(yields=(3, )).execute()
    r40 = yield 4
    try:
        r50 = yield SomeErrorService(1).execute()
        print('Something goes wrong! You should never see this message!')
    except SomeErrorServiceError as err:
        print('Result: {0}'.format(err))

    print(r10, r11, r20, r30, r40)
    yield 'Final result'

def step2(result):
    print(result.get())
    return 'Another Result'

def finish(value):
    print('Finished! - {0}'.format(value.get()))

ChainFactory().then(step1).then(step2).then(finish).run()

Will produce: Bad!, 0, 10, 2, 3, 4, 'Final result', 'Another Result'