Implement Enable/Disable Functionality

<h3 id="summary-problem-motivation">Problem/Motivation</h3>
In Flag 7.x, flags may be disabled. A disabled flag does not appear as a link to all users, but the data is retained. While this adds complexity to the module, there's no reason to not include this functionality in 8.x.

<h3 id="summary-proposed-resolution">Proposed resolution</h3>
Implement enable/disable functionality. The methods on FlagInterface are already implemented, but the functionality is not. Modifications would need to be made to ActionLinkTypeBase, FlagFormBase, and FlagService.

<h3 id="summary-remaining-tasks">Remaining tasks</h3>
* Modify ActionLinkTypeBase to ignore any disabled flags.
* Modify FlagFormBase to indicate disabled flags.
* Modify the actions popup shown in admin > structure > flags to include enable/disable.
* Write tests to check if enable/disable functionality works. 

<h3 id="summary-ui-changes">User interface changes</h3>
admin > structure > flags would need to be modified to display disabled flags as either a separate table, column, or separate tab. An enable/disable option must be available in the operations popup menu for each flag.

<h3 id="summary-api-changes">API changes</h3>
FlagService would need to throw an exception if someone attempts to programmatically flag/unflag a disabled flag.
I see the api says 'route_name', but don't see anywhere in core we are using route_name. It is 'url' => $entity->urlInfo()?