Improvements
* when ALLOW_CONDITIONAL_URLS is False, dashboard items will not be displayed if URL cannot be resolved
* added a dropdown with preset times for delayed logoff on kiosk
* staff can now force a user to log off a tool from the Kiosk
* updated text color on area access logout screens to white for better contrast and readability
* added current reservation in "Upcoming Reservations" section of kiosk
New Features
* Added the ability to have a parent/child tool relationship. The child tool will have a different name, but otherwise will use its parent properties for everything (including same interlock, policy rules etc. since it's really the same tool), but won't be visible directly. it will appear as an option when wanting to enable the parent tool. This will allow it to be billed separately, almost as if it was a different tool.
Before upgrading (If you have custom code in NEMO)
To minimise the changes in NEMO's codebase, tools now have hidden fields but same properties. For instance, the `category` field is now named `_category`, but a `category` property has been added to ensure calling `tool.category` works as expected. The only places that should need changing are places where you are using field names directly, like in filters or other sorts of fields queries in django querysets.
For example:
* `Tool.objects.filter(category="Imaging")` won't work anymore and will have to be changed to `Tool.objects.filter(_category="Imaging")`
* In `admin.py`, custom tool filtering like `list_filter = ('visible', 'operational', 'category')` will have to be changed to `list_filter = ('visible', '_operational', '_category')` (`name`, `visible` and `parent_tool` are the only Tool fields that are not prefixed with _)