Value에서 구조체 타입을 지원하도록 수정

1. Value에서 구조체 타입을 저장할 수 있도록 Value의 내용 수정
2. FunctionType에서 구조체의 반환 타입이나 파라미터의 타입을 적용할 수 있도록 returnType과 parameters 의 타입을 Value.Type에서 Value로 수정
3. FunctionType의 변경에 따른 관련 코드 수정
구조체 타입을 관리해주는 TypeManager 추가 및 ExternalApi 에 타입 관리 역할 추가

1. Value에서 사용될 수 있는 타입에 대한 관리를 하는 TypeManager 추가
2. ExternalApi 가 TypeManager를 상속함으로써 구조체 및 타입 관리 역활을  갖도로 수정
3. Value에서 타입에 대한 파싱을 TypeManager로 위임(Value의 ParseType() 제거)
FunctionType의 Generate() 에서 TypeManager를 참조하여 타입들을 파싱하도록 수정

1. FunctionType의 Generate()에서 TypeManagerImpl의 GetPrimitiveType() 만 이용하여 함수 서명을 파싱하는 것이 아니라, TypeManager를 통해서 파싱하도록 수정
2. TypeManagerImple의 GetPrimitiveType() 제거
3. main()에 변경된 Generate() 적용
임시 인터프리터에서 구조체 타입을 등록하는 기능 추가

1. 임시 인터프리터에서 구조체 타입을 등록하는 기능 추가, 구조체 선언은 일반 함수의 시그니처와 같으나 반환형을 struct로 하고, 구조체의 멤버 번수를 파라미터로 한다.
Structure 클래스 생성자 수정

1. Structure 클래스 생성자 수정
Structure 클래스 Value.h 에서 분리

1. Structure 클래스 Value.h 에서 분리
Value에서 배열을 vector로 사용하던것을 Array 클래스로 분리

1. Value에서 배열을 vector로 사용하던것을 Array 클래스로 분리
2. 추가된 Array에 따른 소스코드 전반 수정