Business Method and Software Patents: A Practical Guide