Online project management solution - which to choose!

Hi guys,

So I have been scouting the internet over the past couple of months in a search to find “the perfect online project management solution”, but due to, and I cannot blame this on anything else, being spoilt for choice, it’s almost impossible to find a solution which covers all the basic requirements and is still cost effective.

In short, we’re a small agency who cannot really afford to pay thousands per month for a solution. We’re more development based, but do design as well for clients, so our requirements is as follows:

Project management with sub “categories”
Can do time tracking
Work out hourly times (to see if a project is profitable or not)
Have multiple projects, preferabbly unlimited open projects
Reporting on times
Unlimited users
To-dos, not part of a project, but something to manage daily tasks not neccesarily relating to projects
Around $20 - $40 per month (or free :stuck_out_tongue: )
CRM solution to manage clients, contacts ect

Automatic invoicing
Subversion and issue tracking built in (we use subversion for our version control)
Client access (so that clients can at all times see where we are with a project
Documents and discussions - This is something I see everyone offers, but most of our clients still use emails and I find it easier to manage clients via email
iPhone and Android app
We dont mind if it’s a hosted solution or not.

I have been looking at 2 which is almost what we need, one being Mavenlink, a cloud solution on Google, and another myintervals, but both these solutions does not offer a “to-do” list, and it’s already something we really need. I looked at basecamp but it lacks most of the features above (like time tracking only available as a seperate (Again, have to pay) plugin).

Does anyone know of a solution as mentioned above which wont cost us an arm and a leg?