One main difference between translation management and localization management tools is how existing translations are reused. Translation management tools come with a Translation Memory, a database of previously translated strings. Every time the translator looks at a new string a lookup is done in the translation memory to find similar strings and offer the previous translations.
Localization management tools typically assume that every UI string has an ID, and they will check if there are previously translated strings with the same text and ID when the translator runs into a new string. This means that you get better reuse of previous translations in case of ambiguities than with translation memories. Besides there are also differences with regard to available quality checks (hot keys, string length issues) that are typical for localization and not so much for non-UI translation.
Having said that, most translation environments offer some kind of support for both types of usage, but localization management tools like SDL Passolo or Alchemy Catalyst are better suited for UI localization than for translation of long texts. For web apps, desktop apps, and server applications a localization management tool would be the better choice, web sites may work better in a translation management tool, and print publications could be tricky. It will depend very much on the underlying document format: not all tools can handle all formats.
Talking of formats: you mentioned that you want to translate images, too. Does this mean that you need OCR support in the tool? Or are you referring to vector image formats like svg? OCR could be tricky: off the top of my head I don't know any tool with built-in OCR support.
As you can see it may well be that there is no single tool that meets all your requirements, but there are definitely some that meet them better than others. Let's start with an open source cloud based tool: I tested zanata.org once and found it pretty easy to get started and to use. If I remember correctly you can also host it yourself. Unfortunately it did not support all the file formats we needed. XTM cloud is a commercial, cloud based translation management solution with support for more file formats than zanata which I also liked: they were also very helpful when we ran into issues. I do not remember their prices, but it was not exactly cheap. My favourite commercial localization tool is Passolo: it is not cloud based, but it is very extensible, which is great when you have to deal with lots of different file formats that change every few months. Still, it is not really great for long, paragraph based texts, so it may not be what you want. For that kind of documents SDL have another tool called Trados Studio, which can also handle software formats like properties files to some extent. Its main competitor is MemoQ from Kilgray, which is very popular with translators and also supports lots of file formats. Kilgray have also built a cloud-based editor for translators, but it lacks many features that a professional translator expects. Might be OK for occasional translators, though.
Sorry for not providing any links to single tools: I had all of them in, and then noticed that I may only include two links because my reputation is too low. I saved one for a comparison of CAT tools from a translator marketplace and the other one for a comparison at wikipedia: these will hopefully help you to find out which tool matches your exact needs best. Please note that some of those tools are pure translation environments and not translation/localization management tools, but most modern tools support both.