We have a small team of developers (currently 3, possibly 4 soon) trying to run all the IT tasks for a retail/ecommerce company. We have a point-of-sale system we built in-house, as well as our main website, and all the various other data feeds and things that go into keeping the company running. Our priorities shift frequently and unpredictably, based on the overall direction of the company ("Are we working on improving our inventory management this week or trying to cut down on shipping costs?"), the dictates of all the various companies we integrate with ("Here's the new format, you need to support it by Friday."), and the needs of eCommerce ("I have this great new thing we need to integrate with!"). Some of the tasks are trivial and some take weeks of work (even when not interrupted). Then there's the things that rely on other things before they can be started...
To try and keep a handle on all this, I'm looking for some form of project management software. It would need to support numerous projects (ideally with some form of optional tasks or subprojects), a flexible priority system, and some form of scale (estimated hours, or even just Trivial/Day/Week/Longer). It has to support multiple users, but doesn't need to have much in the way of permissions or visibility settings. Time tracking isn't necessary, although we might use it if the software has it. The ability to link projects so that one is inactive until another is complete would be a plus.
Is there anything like this out there? I've looked at a few that were recommended in other questions, but nothing seemed to be both priority-based instead of timetable-based and have an easy to create top-level project/task which only optionally needed subtasks.
I know the process I'm trying to manage isn't ideal in the first place, but changing it isn't practical at this point.