JS backend: generate copy and components for data classes.
JS backend: tests for copy and components for data classes.
JS backend: move getDeclaredFunctionByRawSignature to frontend.
JS backend: implement hashCode, toString and equals.
JS backend: tests for hashCode, toString, equals for data classes.