Allowing protocols to be implemented as interfaces in c#
makefile changes to support armv7s