Add plugins support

Also define the instance interface to be able to create
instances from the instance element