made significant changes to underlying conversion code to eliminate temporary file usage and improve performance