Cleaned up, added new class for wildcard matching