Using your food processor, shred the parmesan cheese, then mozzarella, transferring each to its own bowl.
Chop the frozen spinach and allow to defrost slightly.
Heat butter in pan, and then brown ground beef with two-thirds of the oregano, two-thirds of the basil, and the garlic. Break apart the ground beef with a spatula as it cooks. Season with salt and pepper to taste. Transfer to a large bowl and set aside.
Add chopped spinach to the beef and combine well.
While the beef is cooking, in a large bowl, combine ricotta, eggs, salt and pepper, stirring well.
In a large baking dish, cover the bottom with a thin layer of diced tomatoes.
Layer half of the uncooked noodles over the tomatoes, covering them completely.
Sprinkle half the meat/spinach mixture over noodles.
Layer 1/2 the ricotta mixture next using a spatula to spread it evenly.
Sprinkle with 1/3 of the mozzarella cheese.
Pour half the remaining diced tomatoes over the cheese.
Cover with the remaining uncooked lasagna noodles, then meat/spinach mixture, ricotta mixture (spread evenly), and 1/3 mozzarella.
Top with the remaining tomatoes. Then sprinkle on the remaining mozzarella, the parmesan, and remaining basil and oregano. Season with fresh cracked pepper.
Cover the lasagna with a layer of parchment paper, then a layer of aluminum foil to prevent leaking of aluminum into your food.
Place lasagna on a parchment-lined jelly roll pan (in case the lasagna bubbles over).
Bake for 45 minutes, covered tightly. Then pull the foil and parchment paper off and bake for an additional 20 minutes uncovered.
Allow to cool slightly (10-15 minutes) before serving.