Physical Principles Of Virus Capsid Assembly And Genome Packaging