JSF provides rich set of components that makes easy and fast to create GUI for web application. JSF is a specification that has been implemented by many venders like Apache, Sun, Oracle etc. Because of several implementations you may not decide which implementation to use. JSF implementations also provides many components and many third party component vendors are available to use components provided by them. Among these many implementations Apache MyFaces implementation provides a lot of components that are typically needed in creating web forms. You would not require to create your own component. Tomahawk is a set of some new and standard components with extended functionality.
Recommend the tutorial