much improved uuid generation and parsing