Add requirements
Pass functional test
Test fails

* MountainBike have custom colors
* MountainBike have chuck
* MountainBike have 21 speeds
Test pass
Refactor

* Separate classes to form abstract one
* Add interface
Merge branch 'feature/add-mountainBike'