Create p96.ml

Based on your suggestions, improved the implementation. I didn't really shorten the code as I want to show the different states as explicit as possible.
Merge pull request #4 from MassD/patch-1

Create p96.ml