Methods for De-novo Genome Assembly