Now supporting python3.4. Using @implementer instead of implements. @apply has been removed to use @property and @property_name.setter