Creating an approval process is very simple. You create a starting element, add the user task for approval, then you can decide if you want to send an email announcing the event.
The approval process with a timeout is a bit more complicated. In this case, the Event-Based Gateway is used to create multiple paths.
Case escalation looks complicated, but it is really the same settings used 3 times.
A business process can be used to automate team assignments by territory using a Switch Activity.
The number of daes that a lead sits at a specific status can be captured by a process with a daily timer.
A business process can be used to capture the last sales stage prior to the opportunity being closed.
An approval can be performed by a C# activity to allow for a more complex calculation.
An approval can be performed by a SQL procedure to allow for a more complex calculation.