Slice onion and transfer to medium saute pan over medium/low heat. Add the olive oil and cook until golden brown (20-25 minutes). Stir occasionally. Add the salt, pepper and worcesershire sauce during the last 2-3 minutes of cooking time.
While onions are cooking, mix the beef patty ingredients (not olive oil). Form into oval shaped patties. Make 2 or 3 patties depending on your desired thickness. Heat olive oil in a fry pan over medium heat. Add the patties to the pan and cook to desired doneness, flipping once. (I cooked my patties about 12 minutes for well done, cook time depends on thickness) Remove from pan and set aside.
Heat a cast iron pan over medium heat. Melt 1 tablespoon butter. Place 2 bread slices into the pan. Place a beef patty on top of each slice of bread. Top beef patties with a generous pile of onions. Top onions with sliced swiss cheese and a slice of bread. Flip patty melts once the bottom bread is golden brown. (Careful on the flip!) Cook until both sides are browned.