A general NURBS-based method for kinematic limit analysis of masonry vaults