I would like to know:
1) What is the smallest routable subnet size in IPv6 ?
2) Can a /128 address be routed in a IPv6 network?
A IPv6 /128 is a host route, exactly like a IPv4 /32.
A /127 is a point-to-point route, exactly like a /31. In the IP allocation database we'd usually allocate a /127 as the only network in an unadvertised /124 block, for textual representation reasons (point to point links then always end in 0 or 1, rather than requiring engineers to do binary math to work out which address goes on the interface nearer the core).
All other subnets must be /64. You must not use a /64 on a point-to-point link, as that allows a DoS.
As far as subnet address planning goes, subnet 0 is has a special textual representation and should be reserved for control-plane addresses of networking equipment. It is useful to reserve the lower 12 bits of the subnet addressing for a copy of the VLAN ID, as that gives a rapid and simple addressing plan for most subnets. The 13th bit obviously is 0 for VID-derived subnets and subnet 0; and 1 for others. Depending on your network you could use the highest subnetwork bits as a site identifier, allowing easy site address aggregation, and more effective area design (preventing flaps of non-backbone networks being propagated to other sites.).
(Not seeking to be an answer, my comment got too long, vote up Ron's answer.)