Now uses ObjectMap and pools joints