Now I have a proper Applicative
Documentation
Remaining code refactored
Fix amplitude