refactor Block/Comment and its specs