Initial check-in based on live code
Intermediate submission for test purposes
Create public APIs for use by Schedule page

Changes include:
 - Moving public APIs into TeamDataAjax
 - Making TeamDataAdminAjax extend TeamDataAjax
 - Add nonces to admin APIs
Fixes for handling result column, adding season to match edits, and logic bug for AJAX searches
Increment version number to 0.21.
Fix style bug and correct version in plugin metadata
Add autocomplete for Season in Match Admin UI
Allow for edit of season in Match Admin UI
Add GPL v2 license and Readme

Adding license info to project to make sure my work stays free.
Add Next and Last Match Widgets

Create new TeamData_NextMatchWidget and TeamData_LastMatchWidget classes
and register them for use in the UI.
Change Plugin URI to github URL

Change the plugin URI to github location
Rename opposition to team and fix foreign key

This change renames the "opposition" table to "team" to reflect the fact
that the current team's data also needs to be in the table. That
involved a lot of changes elsewhere to refer to "team" instead of
"opposition". I also created a new "our_team" option (plus UI) to store
our team's ID, and refactored the code in TeamDataAdminAjax to use a
single function for the get functions that need to include an option ID
comparison in the JSON output.

This change also cleans up my nasty foreign key bug -- every time we ran
the table update we added redundant foreign keys. We now use consistent
names and confirm whether they exist before creating new foreign keys.
Modularise structure and use uninstall.php

This change restructures the existing code to use a more modular
approach. I have split the core functionality that was in the TeamData
class into TeamDataBase and TeamDataInstaller, as well as making use of
the PHP spl_autoload_register() functionality instead of using manual
includes. Finally, I have created an uninstall.php file for the plugin
instead of an uninstall hook. The change also makes sure that all
options are removed in addition to the tables.
Add comment field to Role table

This change adds a comment/description field for Roles to allow
administrators to remind themselves what a specific role designates.
Add comment to list of fields saved from admin UI

Add missing file from previous check-in to correctly expose comment
field to save/fetch from the admin UI.
Clean up rendering of main admin page

Use HTML instead of repeated `echo` commands.

Also use a class instead of a raw style for the button areas.
Change debugging message

The log message now specifies that the debugging is not only due to
steps during activation.
Add nick_name field to member table

The nick_name VARCHAR field is now in the member table. Code that takes
advantage of the new field will be coming soon.
Rename "role" as "list"

The "role" table, and all the nomenclature surrounding it was really
inaccurate. The name should always have included some sort of email
reference, as the original goal was to support multiple simple mailing
lists.

This change renames the table and all the text and functions that refer
to roles.

Version number bumped to v 0.31
Make functions in Ajax tree protected not private

With me being new to PHP, I didn't realise that "private" methods are
not visible to subclasses. They are not visible, hence the switch to
protected -- I *do* want to reuse the code!