How is being limited by processing power, RAM, and storage different from being limited by the hardware of the server? If there is no difference, is it possible to rewrite any app to be serverless?