Optimism, Arbitrum, and Polygon: Assessing the State of Layer 2 Solutions