Basically the connected texture mod in optifine and mcpatcher(Not sure if it is currently working) can be used to retexture blocks that make use of meta datas.
When a block uses a meta data it loads all 15 meta datas but doesn't put all of them to use. For example logs use meta data for the different colours. But you have 12 unused meta datas. But with a little work you can use the connected texture mod to change the texture. Basically giving you 12 new blocks in you game.
Here is a example: http://imgur.com/a/DLREv
This is the FyreUk texture pack that wantedrobot has been working on putting together. With all of the unused meta datas there is a large number of extra textures that can be used. It just uses a properties file with changes the tile with the block loads. This mod can also be used to connect textures much like the connected textures block did with glass to make it look as if it were a single piece of glass. This can be done with any blocks as well, in the FyreUk Texture 'wanted' Has made it so when 4 logs are next to each other they all connect and only have on boarder.