Since Koha::Object(s) is used for with inheritance interfaces aren't really necessary. Simply declaring Koha::Object(s) as a base for your module will mean those methods already exists. The only time you need to define one of those methods is if you need to override the base behavior ( to add error checking, modify related objects, etc ).
I believe the primary issue is start-up time needed for Moose, which makes it untenable for basic cgi script usage ( as opposed to PSGI/Plack where it only needs to load once ).
In general I'm a fan of interfaces, so I'm not opposed to the idea. Can you explain what advantage you think we'd can from implementing interfaces for Koha::Object(s)?
Thanks!
Kyle