Split merge and sorted merge into differnt functions. Save some algorithmic flaws
Add test for special case