Software Calculus - The Missing Abstraction