Parse olpc-activity-optional field

To mark an activity as optional in the microformat file, set
this field to 1. Anything different from 1 will be treated as
non-optional, which is the previous behaviour. Thus, this is
backwards compatible.

Extend _UpdateHTMLParser class so it can extract the
new optional field.

Signed-off-by: Martin Abente Lahaye <tch@sugarlabs.org>
Support olpc-activity-optional field in BundleUpdate

Extend BundleUpdate class to support this new field, so other
components of the updater can access this information.

Use this new field in MicroformatUpdater class by passing it
to BundleUpdate initializer.

Signed-off-by: Martin Abente Lahaye <tch@sugarlabs.org>
Filter optional activities in automatic updates

Signed-off-by: Martin Abente Lahaye <tch@sugarlabs.org>
Do not select optional activities in updater UI

All activities that have not been explicitly marked as optional
will be treated as non-optional. Therefore, these activities will
be selected in UI by default.

This peserves the previous behaviour, thus this is backwards
compatible.

Signed-off-by: Martin Abente Lahaye <tch@sugarlabs.org>
Merge branch 'optional-updates-try1' of https://github.com/tchx84/sugar into tchx84-optional-updates-try1
Merge branch 'tchx84-optional-updates-try1'