Can you explain how block pools function in the cryptocurrency world? What is their purpose and how do they contribute to the overall blockchain network?