Rewrite parseNumber with do-notation
Adding pretty printer
Minor refactoring