What is the fundamental difference between a fat-client and a thin-client approach to client-server system architectures?