First pass at interfaces module