Initial version with basic support and structure