Update philosophy doc.
Ensure freeform and option components are able to receive change events.
Implement tests to increase code coverage The option module was modified to split components and avoid overloading.