Over medium heat, heat oil in a frying pan. When oil is hot add ground beef, salt, black pepper, cayenne pepper and garlic powder and cook until brown then add onion.
Cook onion until its softened, about 3-5 minutes then add water and cook for about 10 minutes or until the water has evaporated. Set meat mixture aside.
In a large pot over low heat, melt butter. When the butter has melted, add in flour while stirring to make it smooth. Cook for about 2-3 minutes then add milk and stir until smooth.
Cook on low heat for about 5 minutes until the sauce begins to thicken then add all but 1 cup of cheese and Dijon mustard to the mixture. Add a pinch of salt to taste.
Stir until the cheese has melted and the sauce is smooth then add cooked macaroni pasta and ground beef.
Place into a greased 13x9 baking dish, top with remaining cheese and bake in oven preheated to 350 degrees. Bake for 25-30 minutes until the macaroni and cheese begins to bubble and the cheese has melted. Remove from oven and allow to cool slightly before serving.