There is a lot to do. Here is a list of some of the concerns you'll have to address:
Implementing your own cloud-provider interface or sidestepping it
Choosing a networking model and how to implement it (CNI plugin, direct compile)
Whether or not to use network policy
Select images for system components
Security model and SSL certificates
Admin credentials
Templates for components such as API Server, replication controller, and scheduler
Cluster services: DNS, logging, monitoring, and GUI
I recommend the following guide from the Kubernetes site to get a deeper understanding of what it takes to create a cluster from scratch: http://bit.ly/1ToR9EC.