Add code generation for interfaces

Change-Id: I00fa80e5ff81b829b1f909e7f572b3cfa03d24cd
Generate code for server stub implementation

Change-Id: If6d97c48c9a0a2fee574f5ecf8709d0b72f133c9
Add support for optional parameters in methods

Change-Id: Icda4f653af595be641f6c3593339a5ebac4daf72
Fix generated code style

Change-Id: I2861c85cd48f8a72cada52e666e2b029153a0ce1
Improve object serialization

Change-Id: I2bed0129a4a6987e601f1e5b98f3faa12c672503
Add Class and method name to not implemented exeception

Change-Id: I9eb0882f44f4855d6b2af4fa1e48a94f41ee77ab
Improve method serialization

Change-Id: I011520ad5519524e9e04bc42d2f17e21bff16df3
Implement method invocation in method serializers

Change-Id: I5d66e9a29dc2c8b207b79a29d489123ba99b2895
Add code generation for constructor marshaling

Change-Id: I8f82ec4aab8690f76fb058eec7b56db40c1317c2
Add properties support

Change-Id: Ieb51accfb8f8f348a590c92f209fb97d008b1312