Preheat the oven to 375°F/190°C and spray a 10" or larger baking dish with non-stick spray.
In a large non-stick skillet, heat the olive oil over medium heat. Add the onions and cook, stirring regularly, for 5 minutes, or until translucent and beginning to brown.
Then, add in the ground beef and cook this, breaking it up as it cooks, for 8 to 10 minutes, or until it is cooked through and no longer pink.
Drain off any excess grease from the pan and then season with salt, black pepper, brown sugar, cinnamon, and basil.
Stir this together, and then add in the tomato paste and stir, cooking for another 30-seconds.
Add the flour and continue cooking for 30-seconds.
Then, pour in the beef broth and simmer until it begins bubbling.
Now, slice the clean potatoes thinly, and layer ⅓ of them into the baking dish.
Then, pour ⅓ of the meat mixture on top.
Repeat this with more potatoes and sauce until you end with potatoes. Then, cover the dish with aluminum foil and bake for 40 minutes.
If the potatoes are tender, then remove the foil, add the cheese on top, and bake for an additional 20-minutes.