For load balancing, you need multiple shards. Kinesis attempts to balance the number of shards each worker takes on - if you only have one shard, you won't get any benefit from more than one worker. See my related answer here for a bit more information on how Kinesis load balancing works.
As for scaling - each shard has a limit to maximum amount of traffic it can take - from the kinesis limitation docs:
Each shard can support up to 1,000 records per second for writes, up to a maximum total data write rate of 1 MB per second
The way you scale up with kinesis is add more shards - more shards == more throughput. You can either have these shards pre-created, or you can add them as your traffic increases.