Fix implicit PlayScript String conversions

This commit fixes several issues:
- Compiler was generating invalid IL in cases where
Convert.ImplicitPlayScriptConversion was succeeding even though
Convert.ImplicitPlayScriptConversionExists was returning false.
- Compiler was generating invalid IL b/c it was using EmptyCast instead
of BoxedCast with primitive types.
- Addressed common ambiguities introduced by allowing implicit casts
to String from any type. Handled string.Concat by always converting to
String if either side is a String, and handled Array/Vector lookups by
adding overloads for all numeric types.
Add test case for implicit String conversions
Make ExpandoObject.ToString match ActionScript behavior
Merge pull request #281 from playscript/cbroglie-strings

Fix implicit PlayScript String conversions