add scalaz dependency and delete format12 and refactor  some class structure