LA: Generalize F# functions to generic types where possible
LA: Clean up and extend vector enumeration
LA: Clean up and extend matrix enumeration