codeeval.com self-describing numbers commit. added test cases for later optimization.