Only animate objects can sit and it's pretty much the same as in English: a cat can be either sitting, lying or standing on a table, determined visually by its position. Birds typically cannot sit as other animals do, but despite this we use "a bird sits on the tree/table/wherever" unless it's unconscious or dead.
The tricky ones are lie vs stand and I don't think rules would cover everything but I'll try.
So, стоять generally has 2 usages: when something is standing in a vertical position (a bottle, a glass, a book on a shelf(!), a fridge) or when something is ready to be used. Horizontal objects such as тарелка usually lie, but here it's on the table, ready for use, so it stands. Other containers such as a frypan or a pot also "stand" ready to use, but when you put them, say, in a cupboard, they "lie" there. Other examples include software (it "stands" on a computer, ready for use) or a laptop (closed and shut down = "lays", opened and running = "stands").
Knives, forks, pens, chopsticks and other items without a basement cannot "stand" even if they're ready for use (unless you put them in a glass so they are in a vertical position).
Лежать is used for horizontally oriented items (a sheet of paper, a book unless it's on a shelf, a carpet, etc), for vertically oriented items when they are in a horizontal position (a bottle fell and now it is "lying" on the table) or when an item is not where it is supposed to be. So, if a cup falls from the table it was "standing" on and even manages to land in a correct position, it will be "lying" nevertheless, as it is not supposed to be on the floor.
Only animate objects can sit and it's pretty much the same as in English
In English, inanimate objects sit all the time: my coffee cup is sitting on a table next to me as I am typing this, while my car is sitting in my garage. Naturally, in Russian both would be "standing".
software ready for download 'lies' on the internet, but 'stands' installed on your computer?
This. Программа лежит на сайте, фильм лежит на торренте - never thought about it, but yeah, we do use лежит.
Or 'stands' ready to be downloaded
Nah, I think this "ready for" works only for "direct use", not for other manipulations.
And a dirty plate left on the table 'lies' there?