Absolutely to all of the above. A developer's job is to determine what's actually wanted/needed, not what is exactly enumerated, especially in a startup. In addition, if a job needs done, a job needs done. A developer who can hop on a sales call, or do customer support when needed is invaluable in an startup environment.
Learning about these domains allows you to talk to people in them. That allows you to educate people outside of the development group on the specifics of the product and get valuable feedback from them. This allows you to make a better product and at the same time gives you a foundation for doing Biz Dev.
Design is a bit different, but yes - learn the basics of that too and treat designers and design work as development unless your business plan is cranking out logos and t-shirts.