Aspects of Computational Topology and Mathematical Virology