ExternalApi와 관련된 함수의 char*을 String으로 변경

1. ExternalApi와 관련된 함수에서 문자열을 표기하기위한 타입으로 char*을 사용하던 것을 String을 사용하도록
수정
wstring에 대한 StringImpl 생성자 작성

1. wstring을 입력 받아 utf8 형태로 저장하도록 StringImpl 생성자 추가
StringImpl에서 wstring에 대한 캐스팅 연산자 작성

1. StringImpl에서 wstring에 대한 캐스팅 연산자 작성
StringImp의 StringImp 복사생성자 수정

1. StringImp의 StringImp 복사생성자 수정
Merge branch 'convert_stringimpl_inner_encoding_to_utf8' into upgrade_binary_compatibility
Merge branch 'change_raw_string_to_scenario_string' into upgrade_binary_compatibility
Value 동적 라이브러리에서 호환가능한 형태로 변경

1. Value 동적 라이브러리에서 호환가능한 형태로 변경
2. Value의 캐스팅 메소드를 템플릿 메소드로 대체
3. Value에 저장될 수 있는 타입을 템플릿으로 규제함
Value에 저장될 타입의 특성을 판단하는 템플릿 수정

1. Value에 저장될 타입의 특성을 판단하는 템플릿 수정
2. Value의 캐스팅을 ValueType을 기반하여 캐스팅 할 수 있도록 추가
타입 특성 관련 템플릿 클래스 정리하여 하나의 헤더로 모음

1. 타입 특성 관련 템플릿 클래스 정리하여 하나의 헤더로 모음
타입 이름 수정

1. ValuePlaceHolder -> ValuePlaceholder
2. ValuePlaceHolderImpl -> ValuePlaceholderImpl
ArrayImpl의 생성자 정리

1. 배열 타입에 대한 ArrayImpl 생성자 추가
2. 원소 타입이 다른 vector에 대한 ArrayImpl 생성자 추가
3. 원소 타입이 다른 Array에 대한 ArrayImpl 생성자 추가
Array에 비교연산자 추가

1. Array에 비교연산자 추가
Structure를 동적 라이브러리간 호환 가능하도록 수정

1. Structure를 동적 라이브러리간 호환 가능하도록 수정
기존 Structure.cpp 제거

1. 기존 Structure.cpp 제거
Structure.h 에 불필요한 참조 제거

1. Structure.h 에 불필요한 참조 제거
Merge branch 'change_structure_to_compatible' into change_value_to_compatible
Structure.h 의 누락된 참조 추가

1. Structure.h 의 누락된 참조인 algorithm 추가
Value에 저장될 타입에 대한 ValuePlaceholderImpl의 특수화 추가

1. Value에 저장될 타입에 대한 ValuePlaceholderImpl의 특수화가 있는 ValueImpl.h 작성
Merge branch 'change_value_to_compatible' into upgrade_binary_compatibility
ErrorCode.h의 누락된 참조 추가

1. ErrorCode.h의 누락된 참조인 String.h 추가