A Review on Machine-Learning and Nature-Inspired Algorithms for Genome Assembly