spec for Cycle#navigate and refactor to cycle construction

Fixes #19