Implement problem 2

The fibonacci sequence is implemented as an infinite SequenceType, which is filtered appropriately to solve the problem. Ideally, takeWhile would return a SequenceType rather than an Array.