I think a simple "很好！" should also be accepted here. In isolation, this would be translated as "Very good! "
Each of the characters individually do equate to "very good", but when put together i believe it becomes "It's good", because 很 is used for adjectives.
Is "非常好了" an acceptable way of saying this?
I think 非常 is a next step up. Higher degree.
Why le in the ending? Shouldn't it be 太好 only?
It's part of the common 太 + adjective + 了 structure.
When I hear of "very good" I only ever think 很好 ... wouldn't 太好了 be more like "too good"?
Yes, but in Chinese 'too' can be used for both positive and negative whereas in English it is usually reserved for negative excess. You can see the dilemma in translation.
Too good, or "so good!" I think the same